242 天前 / sjf0115
ClickHouse 虽然提供了一些 备份 & 还原 的方法(我在书里都有介绍),但目前总体来看,都不算 “自动化”。 在 ClickHouse 的 2021 Roadmap 中,有一项关于备份和还原的议题,期望通过添加 BACKUP 和 RESTORE 命令,来实现一键备份和还原。 该议题涵盖的内容很多,目前的进展是,在 21.10 release 版本中已经能够使用到 BACKUP/RESTORE 关键字,但是该功能还处于非常初级的阶段,远不能在生产环境中使用。 即便如此,还是阻止不了我一探究竟的好奇心,接下来就让我们体验一下这项新功能吧。
251 天前 / Juicedata
ClickHouse 存算分离架构探索高昌健2021.03.15背景ClickHouse 作为开源 OLAP 引擎,因其出色的性能表现在大数据生态中得到了广泛的应用。区别于 Hadoop 生态组件通常依赖 HDFS 作为底层的数据存储,ClickHouse 使用本地盘来自己管理数据,官方推荐使用 SSD 作为存储介质来提升性能。但受限于本地盘的容量上限以及 SSD 盘的价格,用户很难在容量、成本和性能这三者之间找到一个好的平衡。JuiceFS 的某个客户近期就遇到了这样的难题,希望将 ClickHouse 中的温冷数据从 SSD 盘迁移到更大容量、更低成本的存储介质,更好地支撑业务查询更长时间数据的需求。
260 天前 / u128287
摘要 Shopee ClickHouse 是一款基于开源数据库 ClickHouse 做二次开发、架构演进的高可用分布式分析型数据库。本文将主要介绍 Shopee ClickHouse 的冷热分离存储架构和支持公司业务的实践。 Shopee ClickHouse 的冷热分离存储架构使用 JuiceFS 客户端 mount 远端对象存储到本地机器路径,通过编写 ClickHouse 的存储策略,如同使用多卷存储一样使用远端对象存储。因为我们用同一个 ClickHouse DB 集群支持多个团队的业务,不同团队甚至相同团队的不同业务之间对数据的冷热划分基准可能都不同,所以在做冷热分离时策略需要做到 ClickHouse 的表级别。
262 天前 / 比百事还可乐
ClickHouse 在计算层做了非常细致的工作,竭尽所能榨干硬件能力,提升查询速度。它实现了单机多核并行、分布式计算、向量化执行与 SIMD 指令、代码生成等多种重要技术。 多核并行 ClickHouse 将数据划分为多个 partition,每个 partition 再进一步划分为多个 index granularity,然后通过多个 CPU 核心分别处理其中的一部分来实现并行数据处理。 在这种设计下,单条 Query 就能利用整机所有 CPU。极致的并行处理能力,极大的降低了查询延时。 分布式计算 除了优秀的单机并行处理能力,ClickHouse 还提供了可线性拓展的分布式计算能力。
280 天前 / sjf0115
大家一直想要的自定义函数,这次终于来啦,虽然目前还有点简单,不过 CH 的功能进一步丰富了。 这几天发现,一直有关注的自定义 simple lambda function 这个 feature 被合并到主线了,那还不赶紧试一试?(文末会放上 PR 地址) 自定义lambda 函数的语法如下: CREATEFUNCTION{fn_name}as({parameters})->{code}例如创建一个自定义函数 testFunc: CREATE FUNCTION testFunc AS (a, b) -> (a + b) Query id: da558806-259f-428b-b777-5ecbbea8bae1 Ok. 0 rows in set. Elapsed: 0.004 sec. 创建之后...
302 天前 / sjf0115
分享嘉宾:郑天祺博士快手 编辑整理:柴勇 北明软件 出品平台:DataFunTalk 导读:本文源自郑天祺博士在『快手大数据|数据架构技术交流会』上的演讲,相关视频回放可用快手 APP 搜索“快手大数据”观看。 大家下午好,今天我给大家介绍一下快手对 ClickHouse 开源社区最新贡献的功能——Projection。首先自我介绍一下,我是去年加入快手的,也是中科院计算所系统结构博士,ClickHouse Community Member。ClickHouse 从开源以来,大概半年后,我就是里面活跃的贡献者,目前已经贡献了 300 多个 PR。
305 天前 / sjf0115
分享嘉宾:王方晓腾讯游戏 编辑整理:贾志坤 平顶山学院 出品平台:DataFunTalk 导读:营销活动作为游戏运营的一种重要手段,可以灵活快速的配合游戏各个运营节点的需要而推出,不受游戏版本节奏的影响。而面对数量众多的营销活动和不同的业务诉求,如何在海量日志中评价营销的效果是一个典型的多维分析问题,本次分享主要介绍腾讯游戏营销效果分析的一些概况以及 ClickHouse 的应用实践情况。通过实践表明,ClickHouse 完美解决了查询瓶颈,20 亿行以下的数据量级查询,90% 可以在亚秒(1 秒内)给到结果。
354 天前 / sjf0115
引言 01 A/B 测定义 A/B 测试以数据驱动为导向,可以实现灵活的流量切分,使得同一产品的不同版本能同时在线,通过记录和分析用户对不同版本产生的行为数据,得到效果对比,最大程度地保证结果的科学性和准确性,从而帮助人们进行科学的产品决策。 基于用户行为数据计算不同版本的指标数据,是评估实验结果的唯一依据。 02 指标产品设计 图 1. 新增指标 指标系统产品设计上采用了指标注册的方式,用户可以在自己的业务域和业务线下进行指标注册,注册需要指定指标计算公式(SQL),指标 SQL 必须遵守 SQL 模板...
360 天前 / sjf0115
CentOS 8.3 64 位 ClickHouse 21.6.5.37 1. 系统要求 ClickHouse 可以在任何具有 x86_64、AArch64 或 PowerPC64LE CPU 架构的 Linux、FreeBSD 或 Mac OS X 上运行。官方预构建的二进制文件通常针对 x86_64 进行编译并利用 SSE 4.2 指令集。如下命令检查当前 CPU 是否支持 SSE 4.2: grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported" 如果支持会输出 SSE 4.2 supported 信息。 要在不支持 SSE 4.2 或不具有 AArch64、PowerPC64LE 架构的处理器上运行 ClickHouse,需要编译源代码构建 ClickHouse。
368 天前 / 尹千觞
挖了很久的 CDC 坑,今天打算填一填了。本文我们首先来介绍什么是 CDC,以及 CDC 工具选型,接下来我们来介绍如何通过 Flink CDC 抓取 mysql 中的数据,并把他汇入 Clickhouse 里,最后我们还将介绍 Flink SQL CDC 的方式。 CDC 首先什么是 CDC ?它是 Change Data Capture 的缩写,即变更数据捕捉的简称,使用 CDC 我们可以从数据库中获取已提交的更改并将这些更改发送到下游,供下游使用。这些变更可以包括 INSERT,DELETE,UPDATE 等操作。
379 天前 / sjf0115
前言 ClickHouse 广泛用于用户和系统日志查询场景中,借助腾讯云提供基础设施,微信也在分阶段逐步推进 clickhouse 的建设和应用,目前作为基础建设的一部分,主要针对于 OLAP 场景,为业务方提供稳定高效的查询服务。在业务场景下,实时事件流上报可能会在不同的日志,以不同的格式、途径写入到 clickhouse。在之前的使用中,通过查询多个日志表 join 实现多个指标的整合。用传统 JOIN 方式,我们遇到如下困难:1.每个查询会有非常长的代码,有的甚至 1500 行、2000 行 sql,使用和理解上特别痛苦;2.性能上无法满足业务诉求...
387 天前 / sjf0115
之前文章有介绍过基础的 MergeTree 的物理存储结构,数据会按分区目录的形式保存到磁盘。本文着重介绍一些二进制文件的格式及内容。 首先按照如下规则创建表,用于后续数据的对照查询 #创建表 CREATETABLEdefault.ansel( `a` Int32, `b` Int32, `c` Int32, INDEX `idx_c` (c) TYPE minmax GRANULARITY 1)ENGINE = MergeTreePARTITION BY a ORDER BY bSETTINGS index_granularity=3, index_granularity_bytes = 0; #插入测试数据 insert into default.ansel(a,b,c) values(3,10,4),(3,9,5),(3,8,6),(3,7,7),(3,6,8),(3,5,9),(3,4,10);注意:设置...
403 天前 / sjf0115
导语|ClickHouse 在近几年是大数据分析引擎界的一匹黑马,从默默无闻到一路起飞,在 DB engine Rank 上进入前 50 名,成为全球数据引擎界耀眼的一颗明星。在全球范围内,ClickHouse 单表查询比其他引擎要快数倍以上,在过去的 4 年以来未曾有对手。ClickHouse 为什么会这么快?在实际使用当中如何应用这样一个引擎?还有哪些让人振奋和欣喜的 feature 将会发布?本文由易观 CTO、腾讯云 TVP 郭炜在 Techo TVP 开发者峰会「数据的冰与火之歌——从在线数据库技术,到海量数据分析技术」的《ClickHouse 最新技术的实践与应用》演讲分享整理而成...
411 天前 / sjf0115
供稿 : 甜橙金融大数据研发 kindred 背景很多朋友在使用 distributed 表作 join 的时候 , 可能都会发现一个问题 , 即使设置了 distributed_product_mode='local' , join 右侧的表还是无法被改写成对应的 local 表从而加速 join 的性能。 非 local 表查询#创建 MergeTree 表 CREATETABLEdefault.local_t ( `id`Int64, `age`Int32, `name`String, `createdat`DateTime ) ENGINE=MergeTree ORDERBYid; #创建 Distributed 表 CREATETABLEdefault.all_t ( `id`Int64, `age`Int32, `name`String, `createdat`DateTime ) ENGINE=Distributed('twoshard_onerepl','...
422 天前 / sjf0115
欢迎大家星标、关注 节前发一篇经验分享,提前祝大家劳动节快乐 AB 表切换的使用场景应该说还是很广泛的,比如历史表归档、批量抽数的时候都可以采用 AB 表切换的思路来实现。 比如有这样一个场景,test_a 是面向终端查询的数据表,数据每天定点全量更新。为了减少数据更新对查询的影响,这里准备用 AB 表切换的思路进行。 在数据更新时,首先写入一张按日期编号的 B 表,例如 test_a_2021_04_29。当 B 表数据写完以后,将 AB 两张表切换。 那么在 ClickHouse中怎样实现 AB 两张表的快速切换呢?这里介绍两种主要的方法。