跳至主要内容
跳至主要内容
编辑此页

ClickHouse Cloud 兼容性指南

本指南概述了在 ClickHouse Cloud 中可以预期的功能和操作方面的情况。虽然 ClickHouse Cloud 基于开源 ClickHouse 发行版,但架构和实现可能存在一些差异。您可能会发现这篇博客文章关于 我们如何从头开始构建 ClickHouse Cloud 很有趣且相关,可以作为背景阅读。

ClickHouse Cloud 架构

ClickHouse Cloud 显著简化了运营开销,并降低了大规模运行 ClickHouse 的成本。您无需提前确定部署规模,设置用于高可用性的复制,手动分片数据,在工作负载增加时扩展服务器,或在不使用时缩减服务器——我们为您处理这些。

这些优势源于 ClickHouse Cloud 底层的架构选择

  • 计算和存储是分离的,因此可以沿独立的维度自动扩展,因此您无需在静态实例配置中过度配置存储或计算。
  • 基于对象存储的分层存储和多级缓存提供了几乎无限的扩展能力和良好的性价比,因此您无需提前确定存储分区大小,并担心高昂的存储成本。
  • 默认情况下启用高可用性,并且复制是透明管理的,因此您可以专注于构建应用程序或分析数据。
  • 针对可变连续工作负载的自动扩展默认情况下已启用,因此您无需提前确定服务规模,在工作负载增加时扩展服务器,或在活动减少时手动缩减服务器
  • 默认情况下启用间歇性工作负载的无缝休眠。我们会在一段时间不活动后自动暂停您的计算资源,并在收到新查询时透明地重新启动,因此您无需为闲置资源付费。
  • 高级扩展控制提供了设置自动扩展上限以进行额外的成本控制,或设置自动扩展下限以为具有专门性能要求的应用程序保留计算资源的能力。

功能

ClickHouse Cloud 提供了对 ClickHouse 开源发行版中精选功能集的访问。下表描述了当前在 ClickHouse Cloud 中禁用的某些功能。

数据库和表引擎

ClickHouse Cloud 默认提供高度可用、复制的服务。因此,所有数据库和表引擎均为“Replicated”。您无需指定“Replicated”——例如,在 ClickHouse Cloud 中使用时,ReplicatedMergeTreeMergeTree 是相同的。

支持的表引擎

  • ReplicatedMergeTree(默认,未指定时)
  • ReplicatedSummingMergeTree
  • ReplicatedAggregatingMergeTree
  • ReplicatedReplacingMergeTree
  • ReplicatedCollapsingMergeTree
  • ReplicatedVersionedCollapsingMergeTree
  • MergeTree(转换为 ReplicatedMergeTree)
  • SummingMergeTree(转换为 ReplicatedSummingMergeTree)
  • AggregatingMergeTree(转换为 ReplicatedAggregatingMergeTree)
  • ReplacingMergeTree(转换为 ReplicatedReplacingMergeTree)
  • CollapsingMergeTree(转换为 ReplicatedCollapsingMergeTree)
  • VersionedCollapsingMergeTree(转换为 ReplicatedVersionedCollapsingMergeTree)
  • URL
  • 视图
  • MaterializedView
  • 生成随机数
  • Null
  • 缓冲区
  • 内存
  • Deltalake
  • Hudi
  • MySQL
  • MongoDB
  • NATS
  • RabbitMQ
  • PostgreSQL
  • S3
  • Kafka

接口

ClickHouse Cloud 支持 HTTPS、原生接口和 MySQL wire 协议。对更多接口(如 Postgres)的支持即将推出。

字典

字典是在 ClickHouse 中加速查找的一种流行方式。ClickHouse Cloud 当前支持来自 PostgreSQL、MySQL、远程和本地 ClickHouse 服务器、Redis、MongoDB 和 HTTP 源的字典。

联邦查询

我们支持用于云端跨集群通信以及与外部自管理 ClickHouse 集群通信的联邦 ClickHouse 查询。ClickHouse Cloud 当前支持使用以下集成引擎进行联邦查询

  • Deltalake
  • Hudi
  • MySQL
  • MongoDB
  • NATS
  • RabbitMQ
  • PostgreSQL
  • S3

与某些外部数据库和表引擎(如 SQLite、ODBC、JDBC、Redis、HDFS 和 Hive)的联邦查询尚未支持。

用户定义函数

ClickHouse Cloud 中的用户定义函数处于 私有预览 中。

设置行为

重要提示

ClickHouse Cloud 中的 UDF 不继承用户级别设置。它们使用默认系统设置执行。

这意味着

  • 会话级别设置(通过 SET 语句设置)不会传播到 UDF 执行上下文
  • 用户配置文件设置不会被 UDF 继承
  • 查询级别设置不适用于 UDF 执行内部

实验性功能

为了确保服务部署的稳定性,ClickHouse Cloud 服务中禁用了实验性功能。

命名集合

命名集合 当前在 ClickHouse Cloud 中不受支持。

操作默认值和注意事项

以下是 ClickHouse Cloud 服务的默认设置。在某些情况下,这些设置是固定的,以确保服务的正确运行,而在其他情况下,可以对其进行调整。

操作限制

max_parts_in_total: 10,000

将 MergeTree 表的 max_parts_in_total 设置的默认值从 100,000 降低到 10,000。做出此更改的原因是我们观察到大量数据部分可能会导致云服务启动缓慢。大量部分通常表示分区键的选择过于细粒度,通常是意外发生的,应避免。更改默认值将允许更早地检测到这些情况。

max_concurrent_queries: 1,000

将此服务器设置从默认的 100 增加到 1000,以允许更多的并发性。这将导致提供的层级服务的 副本数 * 1,000 个并发查询。基本层级服务限制为单个副本,因此为 1000 个并发查询,而 Scale 和 Enterprise 的并发查询数量取决于配置的副本数。

max_table_size_to_drop: 1,000,000,000,000

将此设置从 50GB 增加到允许删除最多 1TB 的表/分区。

系统设置

ClickHouse Cloud 针对可变工作负载进行了调整,因此目前大多数系统设置不可配置。我们预计大多数用户不需要调整系统设置,但如果您对高级系统调整有疑问,请联系 ClickHouse Cloud 支持团队。

高级安全管理

作为创建 ClickHouse 服务的一部分,我们创建了一个默认数据库,以及具有此数据库广泛权限的默认用户。此初始用户可以创建其他用户并将他们的权限分配给此数据库。除此之外,目前不支持使用 Kerberos、LDAP 或 SSL X.509 证书身份验证在数据库中启用以下安全功能。

路线图

我们正在评估对 ClickHouse Cloud 中许多其他功能的诉求。如果您有反馈并希望请求特定功能,请 在此处提交

    © . This site is unofficial and not affiliated with ClickHouse, Inc.