ClickHouse 25.3 版本发布说明

ClickHouse 25.3 json列类型使用示例 JSON已经成为现代数据系统中处理半结构化和非结构化数据的通用语言。无论是在日志记录和可观察性场景、实时数据流、移动应用存储还是机器学习管道中,JSON的灵活结构使其成为跨分布式系统捕获和传输数据的首选格式。 从clickhouse 25.3版本,在生产中已经可以使用JSON列类型 阅读详情

图片

本文字数:9393;估计阅读时间:24 分钟

作者: ClickHouse Team

本文在公众号【ClickHouseInc】首发

图片

又到了新版本发布的时间!

发布概要

ClickHouse 25.3 版本正式发布,本次更新带来了18项新功能🌱、13项性能优化🐣、48个bug修复🌦️

本次更新新增了对 AWS Glue 和 Unity 目录 的查询支持,引入了 查询条件缓存,优化了 S3 查询的自动并行化,并新增了一些 数组函数!

欢迎新贡献者

我们热烈欢迎所有在 25.3 版本中首次贡献代码的开发者!ClickHouse 社区的不断壮大令人振奋,我们由衷感谢每一位贡献者的支持和努力,正是你们的参与让 ClickHouse 变得越来越强大。

以下是本次版本的新增贡献者名单:

Andrey Nehaychik, Arnaud Briche, Cheryl Tuquib, Didier Franc, Filipp Abapolov, Ilya Kataev, Jason Wong, Jimmy Aguilar Mena, Mark Roberts, Onkar Deshpande, Shankar Iyer, Tariq Almawash, Vico.Wu, f.abapolov, flyaways, otlxm, pheepa, rienath, talmawash

AWS Glue 和 Unity 目录

贡献者:Alexander Sapin

本次版本新增了对 AWS Glue 和 Unity 数据目录的支持,使 ClickHouse 能够更好地与 Lakehouse 生态集成。

现在,你可以通过 AWS Glue 查询 Apache Iceberg 表。首先,需要创建一个数据库引擎:

CREATE DATABASE demo_catalog 
ENGINE = DataLakeCatalog
SETTINGS catalog_type = 'glue', region = 'us-west-2',
    aws_access_key_id = 'AKIA...', aws_secret_access_key = '...';

然后即可查询数据:

SHOW TABLES 
FROM demo_catalog;

SELECT * 
FROM "demo_catalog"."db.table";

Unity 目录 也支持 Apache Iceberg 和 Delta Lake 表。使用方式类似,先创建数据库引擎:

CREATE DATABASE unity_demo
ENGINE = DataLakeCatalog(
    'https://endpoint.cloud.databricks.com/api/2.1/unity-catalog')
SETTINGS catalog_type = 'unity',
    warehouse = 'workspace', catalog_credential = '...'

然后像查询普通表一样使用即可:

SHOW TABLES 
FROM unity_demo;

SELECT * 
FROM "unity_demo"."db.table";

JSON 数据类型现已正式可用于生产环境

贡献者:Pavel Kruglov

1.5 年前,我们发现 ClickHouse 的 JSON 存储 方案仍有很大优化空间,于是决定彻底重构。一年后,Pavel 开发出了一种全新的 列式 JSON 存储 方案,带来了更高效的数据存储与查询能力。详细过程请参考 [《我们如何为 ClickHouse 构建新的强大 JSON 数据类型》](How we built a new powerful JSON data type for ClickHouse)。

最终,我们实现了一种 性能、压缩率和易用性 远超现有 JSON 数据存储方案的技术,详见 [《十亿文档 JSON 挑战:ClickHouse vs. MongoDB、Elasticsearch 及更多》](The billion docs JSON Challenge: ClickHouse vs. MongoDB, Elasticsearch, and more)。

TL;DR:据我们所知,这是列式存储首次被正确地应用于半结构化数据。ClickHouse 的新 JSON 存储具备以下优势:

  • 存储更紧凑,比磁盘上的压缩文件还小
  • 查询速度快数千倍,远超 MongoDB 等传统 JSON 存储,同时保持简洁易用
  • 支持完整的动态 JSON 路径,无需强制转换数据类型

现在,这一 JSON 存储方案已正式可用于生产环境,并深度集成 ClickHouse 查询加速功能! 你可以在 [《加速 ClickHouse 的 JSON 查询,助力 Bluesky 深入分析》](Accelerating ClickHouse queries on JSON data for faster Bluesky insights) 中了解更多。

此外,我们还开发了 JSONBench —— 业内首个 公正、中立的 JSON 文档分析基准测试。如果你尝试搜索类似的基准测试,会发现 目前没有其他可比的方案。

更重要的是,支撑该方案的核心技术 变体类型 (Variant type) 和 动态类型 (Dynamic type) 也已正式发布。它们不仅优化了 JSON 存储,还为未来 XML、YAML 等 半结构化数据格式 提供了支持。

我们迫不及待地想看看你会用它构建什么!快来试试吧! 如果你对 ClickHouse JSON 的未来发展感兴趣,欢迎查看我们的 [产品路线图](our roadmap)【https://github.com/ClickHouse/ClickHouse/issues/68428】。

查询条件缓存

贡献者:ZhongYuanKai

本次发布新增了 查询条件缓存 (Query Condition Cache),该功能可以 大幅加速重复查询,尤其适用于 仪表盘查询 和 可观测性分析 等场景。对于某些 无法利用主索引 的 高选择性 WHERE 条件,查询条件缓存能够有效优化查询性能。

例如,以下查询用于统计 Bluesky 上包含 椒盐卷饼表情符号 的所有帖子:

SELECT count()
FROM bluesky
WHERE (data.kind = 'commit')
  AND (data.commit.operation = 'create')
  AND (data.commit.collection = 'app.bsky.feed.post')
  AND (data.commit.record.text LIKE '%🥨%');

另一个查询用于分析 发布这些帖子时使用的主要语言:

SELECT
    arrayJoin(CAST(data.commit.record.langs, 'Array(String)')) AS language,
    count() AS count
FROM bluesky
WHERE (data.kind = 'commit')
  AND (data.commit.operation = 'create')
  AND (data.commit.collection = 'app.bsky.feed.post')
  AND (data.commit.record.text LIKE '%🥨%')
GROUP BY language
ORDER BY count DESC;

两个查询共享相同的 过滤条件 (predicate):

WHERE (data.kind = 'commit')
  AND (data.commit.operation = 'create')
  AND (data.commit.collection = 'app.bsky.feed.post')
  AND (data.commit.record.text LIKE '%🥨%')

查询条件缓存 机制会缓存 第一个查询 的扫描结果,并在 第二个查询 中直接复用,从而 大幅加速查询执行。如果你想深入了解 查询条件缓存 的具体实现、性能优化细节,以及上述查询的测试结果,可以参考我们的 [详细博客文章]【https://clickhouse.com/blog/introducing-the-clickhouse-query-condition-cache】。

自动并行化外部数据

贡献者:Konstantin Bogdanov

在上一节中,我们探讨了如何在 ClickHouse 的 MergeTree 表中查询 BlueSky 数据集,并统计其中的椒盐卷饼表情符号的出现次数。现在,让我们直接在 S3 上执行查询,看看所需时间:

SELECT count()
FROM s3('https://clickhouse-public-datasets.s3.amazonaws.com/bluesky/file_{0001..0100}.json.gz', 'JSONAsObject')
WHERE (json.kind = 'commit') 
AND (json.commit.operation = 'create') 
AND (json.commit.collection = 'app.bsky.feed.post') 
AND (json.commit.record.text LIKE '%🥨%')
SETTINGS 
  input_format_allow_errors_num = 100, 
  input_format_allow_errors_ratio = 1;
┌─count()─┐
│      69 │
└─────────┘

1 row in set. Elapsed: 64.902 sec. Processed 100.00 million rows, 13.35 GB (1.54 million rows/s., 205.75 MB/s.)
Peak memory usage: 2.68 GiB.

查询耗时刚刚超过 1 分钟!我的 ClickHouse Cloud 集群包含 10 个节点,借助 s3Cluster 表函数,我可以将文件的读取任务分配到所有节点:

SELECT count()
FROM s3Cluster(default, 'https://clickhouse-public-datasets.s3.amazonaws.com/bluesky/file_{0001..0100}.json.gz', 'JSONAsObject')
WHERE (json.kind = 'commit') 
AND (json.commit.operation = 'create') 
AND (json.commit.collection = 'app.bsky.feed.post') 
AND (json.commit.record.text LIKE '%🥨%')
SETTINGS 
  input_format_allow_errors_num = 100, 
  input_format_allow_errors_ratio = 1;

让我们测试一下查询所需的时间!

┌─count()─┐
│      69 │
└─────────┘

1 row in set. Elapsed: 16.689 sec. Processed 100.00 million rows, 13.38 GB (5.99 million rows/s., 801.86 MB/s.)
Peak memory usage: 2.06 GiB.

查询时间减少了 4 倍,虽然未能实现完全线性的加速,但优化效果仍然显著。

ClickHouse 提供了一系列 ...Cluster 函数(如 s3Cluster、azureBlobStorageCluster、deltaLakeCluster、icebergCluster 等),它们在任务分配方面类似于并行副本(parallel replicas),但有一个关键区别:并行副本按数据粒度范围(granule ranges)划分任务,而 ...Cluster 函数则按文件级别进行分配。我们用下图来展示上述查询的执行流程:

图片

首先,查询发起服务器(即接收查询的服务器)解析通配符模式(glob pattern),连接到其他服务器,并动态分发文件。其他服务器在完成当前任务后,会向发起服务器请求新文件,直到所有文件处理完毕。每台服务器会利用自身 CPU 核心数,采用 N 个并行流处理文件的不同部分。所有的部分查询结果最终被合并,并返回给发起服务器,以组装完整的查询结果。由于需要协调任务和合并数据,整体加速比并非严格线性。

从 ClickHouse 版本 25.3 开始,无需调用 ...Cluster 版本的远程数据访问函数即可实现分布式处理。只要启用了并行副本(parallel replicas),ClickHouse 就会在集群环境下自动进行任务分发。

如果不希望使用分布式处理,可以通过以下参数禁用:

SET parallel_replicas_for_cluster_engines = 0;

rraySymmetricDifferenc

贡献者:Filipp Abapolov

ClickHouse 提供了丰富的数组函数,能够解决多种数据处理问题。其中一个常见需求是:找出两个数组中只存在于其中一个,而不属于另一个的元素。

一种实现方式是先计算两个数组的并集,然后去除所有出现在交集中的元素:

WITH
    [1, 2, 3] AS a,
    [2, 3, 4] AS b
SELECT
    arrayUnion(a, b) AS union,
    arrayIntersect(a, b) AS intersect,
    arrayFilter(x -> (NOT has(intersect, x)), union) AS unionButNotIntersect;

这种方法可行,但如果有一个函数能直接完成这个操作,显然更为便捷。因此,我们引入了 arraySymmetricDifference:

WITH
    [1, 2, 3] AS a,
    [2, 3, 4] AS b
SELECT
    arrayUnion(a, b) AS union,
    arrayIntersect(a, b) AS intersect,
    arrayFilter(x -> (NOT has(intersect, x)), union) AS unionNotIntersect,
    arraySymmetricDifference(a, b) AS symmetricDifference;
┌─union─────┬─intersect─┬─unionNotIntersect─┬─symmetricDifference─┐
│ [3,2,1,4] │ [2,3]     │ [1,4]             │ [1,4]               │
└───────────┴───────────┴───────────────────┴─────────────────────┘

estimateCompressionRatio

贡献者:Tariq Almawash

本次发布新增的另一个函数是 estimateCompressionRatio,它可以评估对某列应用不同压缩算法可能产生的影响。

还记得 为何ClickHouse 如此快文章中数据压缩的部分吗?ClickHouse 在列级别进行数据压缩。

我们可以通过在 play.clickhouse.com 上的 hits 表中对 CounterID 列应用压缩算法,来观察其工作方式:

SELECT round(estimateCompressionRatio('NONE')(CounterID)) AS none,
       round(estimateCompressionRatio('LZ4')(CounterID)) AS lz4,
       round(estimateCompressionRatio('ZSTD')(CounterID)) AS zstd,
       round(estimateCompressionRatio('ZSTD(3)')(CounterID)) AS zstd3,
       round(estimateCompressionRatio('GCD')(CounterID)) AS gcd,
       round(estimateCompressionRatio('Gorilla')(CounterID)) AS gorilla,
       round(estimateCompressionRatio('Gorilla, ZSTD')(CounterID)) AS mix
FROM hits
FORMAT PrettyMonoBlock;

以下是查询的输出结果:

┏━━━━━━┳━━━━━┳━━━━━━┳━━━━━━━┳━━━━━┳━━━━━━━━━┳━━━━━━┓
┃ none ┃ lz4 ┃ zstd ┃ zstd3 ┃ gcd ┃ gorilla ┃  mix ┃
┡━━━━━━╇━━━━━╇━━━━━━╇━━━━━━━╇━━━━━╇━━━━━━━━━╇━━━━━━┩
│    1 │ 248 │ 4974 │  5110 │   1 │      32 │ 6682 │
└──────┴─────┴──────┴───────┴─────┴─────────┴──────┘

专用编解码器(GCD 和 Gorilla)对数据压缩影响较小。而更通用的编解码器,如 LZ4,尤其是 ZSTD,可以显著减少存储空间。此外,我们还可以调整 ZSTD 的压缩级别,数值越高,压缩比越大,但同时压缩过程也会更耗时,从而增加写入操作的时间。

该函数同样适用于尚未导入 ClickHouse 的数据。例如,以下查询返回存储在 S3 里的 Amazon Reviews Parquet 文件的模式信息:

DESCRIBE  s3(
  'https://datasets-documentation.s3.eu-west-3.amazonaws.com' ||
  '/amazon_reviews/amazon_reviews_2015.snappy.parquet'
)
SETTINGS describe_compact_output=1;
┌─name──────────────┬─type─────────────┐
│ review_date       │ Nullable(UInt16) │
│ marketplace       │ Nullable(String) │
│ customer_id       │ Nullable(UInt64) │
│ review_id         │ Nullable(String) │
│ product_id        │ Nullable(String) │
│ product_parent    │ Nullable(UInt64) │
│ product_title     │ Nullable(String) │
│ product_category  │ Nullable(String) │
│ star_rating       │ Nullable(UInt8)  │
│ helpful_votes     │ Nullable(UInt32) │
│ total_votes       │ Nullable(UInt32) │
│ vine              │ Nullable(Bool)   │
│ verified_purchase │ Nullable(Bool)   │
│ review_headline   │ Nullable(String) │
│ review_body       │ Nullable(String) │
└───────────────────┴──────────────────┘

接下来的查询计算了 product_category 列的压缩比:

SELECT round(estimateCompressionRatio(‘NONE’)(product_category)) AS none,
          round(estimateCompressionRatio(‘LZ4’)(product_category)) AS lz4,
          round(estimateCompressionRatio(‘ZSTD’)(product_category)) AS zstd
FROM
 s3(
  'https://datasets-documentation.s3.eu-west-3.amazonaws.com' ||
  '/amazon_reviews/amazon_reviews_2015.snappy.parquet'
);
┌─none─┬─lz4─┬─zstd─┐
│    1 │ 227 │ 1750 │
└──────┴─────┴──────┘

我们还可以评估,如果将数据导入到不同的列类型中,压缩效果会如何:

SELECT round(estimateCompressionRatio(‘NONE’)(product_category)) AS none,
          round(estimateCompressionRatio(‘LZ4’)(product_category)) AS lz4,
          round(estimateCompressionRatio(‘ZSTD’)(product_category)) AS zstd
FROM
 s3(
  'https://datasets-documentation.s3.eu-west-3.amazonaws.com' ||
  '/amazon_reviews/amazon_reviews_2015.snappy.parquet',
  ‘Parquet’,
  ‘product_category LowCardinality(String)’
);
┌─none─┬─lz4─┬─zstd─┐
│    1 │ 226 │ 1691 │
└──────┴─────┴──────┘

或者,在更改数据排序方式后,压缩比是否有所不同:

SELECT round(estimateCompressionRatio(‘NONE’)(product_category)) AS none,
          round(estimateCompressionRatio(‘LZ4’)(product_category)) AS lz4,
          round(estimateCompressionRatio(‘ZSTD’)(product_category)) AS zstd
FROM (
  SELECT * 
  FROM
   s3(
    'https://datasets-documentation.s3.eu-west-3.amazonaws.com' ||
    '/amazon_reviews/amazon_reviews_2015.snappy.parquet',
    ‘Parquet’,
    ‘product_category LowCardinality(String)’
  )
  ORDER BY product_category
);
┌─none─┬─lz4─┬─zstd─┐
│    1 │ 252 │ 7097 │
└──────┴─────┴──────┘

征稿启示

面向社区长期正文,文章内容包括但不限于关于 ClickHouse 的技术研究、项目实践和创新做法等。建议行文风格干货输出&图文并茂。质量合格的文章将会发布在本公众号,优秀者也有机会推荐到 ClickHouse 官网。请将文章稿件的 WORD 版本发邮件至:Tracy.Wang@clickhouse.com

【Clickhouse从入门到精通】第60篇:ClickHouse生态总结与未来展望 ClickHouse系列收官总结 本文作为《ClickHouse从入门到精通》系列的第60篇收官之作,系统回顾了整个系列的知识体系。文章从基础概念到高级应用,全面梳理了ClickHouse的核心技术: 知识体系:完整回顾了60篇文章的知识图谱,包括列式存储原理、MergeTree引擎家族、分布式架构等核心内容 生态工具:详细盘点了ClickHouse的企业版工具、运维监控、数据集成和可视化方案 版本演进:分析了从21.x到24.x的主要版本特性升级 未来趋势:展望了向量化引擎、湖仓一体、AI集成等发展方向 阅读详情

相关推荐

基于新张量核范数的TRPCA:多维数据低秩稀疏分解的理论与实践

本文深入探讨了基于新张量核范数的TRPCA(张量鲁棒主成分分析)技术。该技术通过t-product运算和新定义的张量核范数,能有效从多维数据(如视频、彩色图像)中分离低秩背景与稀疏前景/噪声。文章结合理论、核心算法(ADMM、t-SVT)及图像恢复、视频背景建模等实战案例,展示了其在处理复杂多维数据分解任务中的强大优势。

weixin_29173777的博客 269

ClickHouse 版本升级

ClickHouse 版本升级

style_boy的博客 3449

【图数据库与知识图谱入门】2.2 图数据库 vs. 关系型数据库 vs. NoSQL数据库

本文对比了关系型数据库、NoSQL数据库和图数据库的核心差异与应用场景。关系型数据库以二维表结构为核心,适合结构化数据的事务处理(如MySQL),但多表关联查询性能随层级增加而下降。NoSQL数据库(如MongoDB)具有灵活schema,适合海量非结构化数据存储,但关联查询能力较弱。图数据库专注于节点-边关系建模,擅长处理复杂关联分析(如社交网络)。通过学生-课程案例展示了MySQL的多表JOIN操作和MongoDB的两种关联实现方式(内嵌文档和文档引用),揭示了不同数据库在数据关联处理上的本质区别。

kngines 1541

ClickHouse 24.1 版本发布说明

ClickHouse 在 2024 年的首个新版本发布来了!

ClickHouseDB的博客 2659

【低轨】Starlink星链-Ku波段OFDM信号同步机制与PNT应用潜力

本文深入解析了Starlink星链Ku波段OFDM信号的同步机制及其在定位、导航与授时(PNT)领域的应用潜力。研究发现,其信号帧内嵌的同步序列具有相位恒定特性,支持超长相干积分,可在极低信噪比下实现高精度伪距测量,为利用低轨卫星通信信号实现高精度PNT服务提供了新的技术路径。

weixin_29250403的博客 730

OpenMythos深度解析

本文深入解析了kyegomez/OpenMythos项目如何从第一性原理重建Claude Mythos的核心架构。该项目并非直接复制Claude,而是基于公开论文和实验结果推测其可能的设计理念,构建了包含多模态注意力、深度推理引擎、知识检索模块等六大核心组件的模块化架构。重点剖析了分组查询注意力(GQA)的实现细节,展示了KV头扩展等关键技术。该项目已成为大模型开源社区最受关注的研究之一,为理解Claude的架构思想提供了有价值的参考。

Crown_22的博客 518

ClickHouse 23.12 版本发布说明

迎接2024年圣诞节后的第一个新版本。

ClickHouseDB的博客 2130

手把手教你学Simulink——基于Simulink的轮毂电机独立驱动转矩矢量分配

阐述了轮毂电机独立驱动的核心价值与转矩分配的必要性在 Simulink 中实现了完整的“上层稳定控制 + 下层最优分配”架构对比了三种分配策略在极限工况下的性能差异提供了工程落地的关键考量特斯拉 Cybertruck(后轮双电机矢量控制)Rivian R1T(四电机坦克掉头)宝马 iX(精准牵引力控制)核心思想“以软件定义底盘,以算法驾驭动力;化四轮之独立,为整车之协同。—— 让汽车在极限边缘依然从容不迫。

MHD0815的博客 369

clickhose版本

ClickHouse的第22个主要版本中的第7个次要版本,经过1次修订或错误修复,并具有内部构建号或修订号2484。这个版本号用于标识和跟踪ClickHouse的特定发布和构建。版本号"22.7.1.2484"表示。

qq_41081716的博客 1951

C#里使用NModbus来创建一个TCP从站服务

摘要:本文介绍了一个用C#实现的Modbus TCP从站服务器,基于.NET Framework 4.6.1开发。代码使用NModbus库创建TcpListener和ModbusSlaveNetwork,支持设置IP地址、端口号和从站ID。服务器实现了数据存储初始化功能(包括线圈和保持寄存器),并提供了启动/停止操作的UI界面和日志记录功能。该解决方案适用于需要调试Modbus TCP协议的场景,特别适合无法升级到更高版本.NET Framework的环境。

大坡3D软件开发 477

论文阅读:2024 ACM CCS “Do Anything Now”: Characterizing and Evaluating In-The-Wild Jailbreak Prompts on

大语言模型(LLMs)的滥用问题引起了公众和大语言模型供应商的高度关注。有一种特殊的对抗性提示,叫做越狱提示,它已成为绕过防护措施、让大语言模型生成有害内容的主要攻击手段。在这篇论文中,作者使用新框架JailbreakHub,对2022年12月至2023年12月期间的1405个越狱提示进行了全面分析。作者识别出131个越狱提示社区,发现了越狱提示的独特特征以及主要攻击策略,比如提示注入和权限提升。

CSPhD-winston的博客 1411

ClickHouse 25.9 版本发布说明

ClickHouse 25.9 版本共带来了 25 项新功能 🍎、 22 项性能优化 🍁、 以及 83 个bug修复 🌿。

ClickHouseDB的博客 1928

【Go语言实战】(2) Gin+Vue 电子商城

618来!!不用纠结去哪里剁手了!直接自己安排一个商场不香吗??

面向生活编程 4827

ClickHouse 25.5 版本发布说明

ClickHouse 25.5 版本带来了 15 项新特性、23 项性能优化和 64 项缺陷修复。

ClickHouseDB的博客 1703

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

ClickHouse 25.7 版本发布说明

本次ClickHouse 25.6 发布包含 27 项新功能 🌸 26 项性能优化 🍦 以及 98 个缺陷修复 🐞。

ClickHouseDB的博客 1394

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ClickHouse 25.8 版本发布说明

ClickHouse 25.8 版本共带来了 45 项新功能 🌻、47 项性能优化 🏍 和 119 个 bug 修复 🐝

ClickHouseDB的博客 1226

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

ClickHouse 25.6 版本发布说明

本次ClickHouse 25.6 发布包含 25 项新功能 🌸 32 项性能优化 🦋 以及 105 个缺陷修复 🐝。

ClickHouseDB的博客 1249

ClickHouse 25.1 版本发布说明

本文字数:12318;估计阅读时间:31 分钟作者: ClickHouse Team本文在公众号【ClickHouseInc】首发又到了每月发布新版本的时间!发布概要ClickHouse 25.1 版本正式发布,本次更新带来了🦃、在本次发布中,我们优化了并行哈希连接算法,引入了二级哈希表进行加速;在表级别新增了 MinMax 索引;改进了 Merge 表;增加了自增功能……还有更多精彩更新等你探索!热烈欢迎 25.1 版本的新贡献者!

ClickHouseDB的博客 1841

ClickHouse 25.4 版本发布说明

ClickHouse 25.4 带来了 25 项新功能 🌸 23 项性能优化 🦋 以及 58 个缺陷修复 🐝

ClickHouseDB的博客 1467

ClickHouse 24.10 版本发布说明

本文字数:13817;估计阅读时间:35 分钟作者:ClickHouse Team本文在公众号【ClickHouseInc】首发又到了新版本发布的时间!本次ClickHouse 24.10 版本包含了🎁、🛷、🐛在本次发布中,clickhouse-local 更加实用,新增了复制和计算器模式。可刷新物化视图已达到生产就绪标准,远程文件支持缓存,表克隆操作也得到了简化。正如往常,我们热烈欢迎所有 24.9 版本中的新贡献者!

ClickHouseDB的博客 1746

ClickHouse 25.12 版本发布说明

ClickHouse 25.12 版本带来了 26 项新特性 🎄、31 项性能优化 ⛸,以及 129 个 bug 修复 ☃

ClickHouseDB的博客 940

ClickHouse 23.11 版本发布说明

23.11版本新增25个新功能,实现了24项性能优化,修复了70处bug。

ClickHouseDB的博客 1436

ClickHouse 26.2 版本发布说明

ClickHouse 26.2 来了!在本文中,文本索引和 QBit 数据类型达到生产就绪状态。

ClickHouseDB的博客 635

ClickHouse 23.9 版本发布说明

我们非常兴奋地分享了23.9版本中一系列令人惊叹的功能特性。

ClickHouseDB的博客 607

ClickHouse版本迁移实战:企业级升级与回滚最佳实践

ClickHouse作为现代大数据分析型数据库管理系统,其版本迭代频率高、功能更新快,为企业用户带来性能提升的同时也带来了版本管理的挑战。本文深度解析ClickHouse版本迁移的核心策略,提供生产环境下的实战指南。 ## 版本演进与兼容性挑战 ClickHouse采用双轨发布策略:**稳定版(Stable)** 和 **长期支持版(LTS)**。根据变更日志分析,2025年已发布v25.9至

gitblog_00864的博客 484

ClickHouse 26.3 版本发布说明:异步插入默认开启,JOIN重排序更智能!

ClickHouse 26.3重磅发布!异步插入默认启用,新增JOIN重排序与物化CTE,性能与易用性再升级。

ClickHouseDB的博客 596
上一篇: 解锁 ClickHouse 新技能: JSON 数据性能调优,实时获取业务洞察
下一篇: ClickHouse 查询提速新武器:查询条件缓存
ClickHouseDB
博客等级 码龄3年 1707粉丝 320原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值