ClickBench 最新跑分排行榜,黑马出现!

news/2024/10/19 23:48:57/

记者:和平,责编:张红月

近期备受瞩目的 ClickBench 排行榜,出现了一匹黑马,在业界最为通行的 c6a.4xlarge, 500gb gp2 机型下,StarRocks 排名第一。要知道,ClickHouse 才是该榜单上长年稳坐第一的选手。

在揭晓黑马前,我们先认识下 ClickBench 和 ClickHouse。ClickBench 和 ClickHouse,都带有 Click,是不是有什么血缘关系?

没错,你猜对了!ClickBench 正是 ClickHouse 在 2013 年 10 月创建的分析型数据库跑分排行榜。ClickBench 通过从一周的页面点击数据中抽取 1/50,再从中抽取前 10 亿、1 亿、1000 万条的记录,来制作测试数据集。整个测试过程是在芬兰一个私人数据中心的集群上完成的,该集群为 3 节点,集群配置为 Xeon E2650v2,128GiB 内存,8x6TB HDD 硬盘 (RAID 6),10G 网络。

发起 ClickBench 的 ClickHouse 是全球知名的开源分析型数据库,最初起源于俄罗斯互联网巨头 Yandex,GitHub Star 近 2.5 万,其在 2021 年成立了商业化公司。ClickHouse 以性能彪悍而著称,在亿级数据集上比 Vertica 约快 5 倍、比 Apache Hive 快 279 倍、比 My SQL 快 801 倍,在十亿级数据库上比 Vertica 约快 5 倍,而 MySQL 和 Apache Hive 则无法在限定时间内完成。

ClickBench 测试范围包括:点击流和流量分析,网页分析,机器生成的数据、结构化日志,事件数据。典型查询场景为即席分析和实时仪表盘。测试数据集取自全球最大的网站分析平台之一的真实流量数据。在保留必要的数据分发的前提下,对所有数据进行了匿名化处理。查询并非直接来自生产环境,而是临时编辑成能反映真实负载的查询。

从 2013 年开始, ClickHouse、MonetDB、InfiniDB、Infobright、LucidDB、Vertica、Hive 以及 MySQL 均参与了测试。为了保证公平,ClickBench 榜单由一个没有 ClickHouse 经验的人主导。在 2016 年之前,这个榜单都是私底随机开展的。然而从 2016 年开始,榜单排行结果在 ClickHouse 的开源社区发布后,变成了对外公开的打榜测试。为了保证数据安全,ClickHouse 在 2019 年发布了 ClickHouse-obfuscator 工具,将隐私数据匿名处理,用安全的数据集做公开测试。后来 Greenplum、MemSQL (现在的 SingleStore)、OmniSci (现在的 HeavyAI)、DuckDB、PostgreSQL、TimescaleDB 等都参与了测试。

因为旧的测试集群天然对 ClickHouse 和网络分析数据友好,但是对其他系统和数据类型不友好,比如无符号整数(不支持标准 SQL),零字节字符串,定长字符串等。所以 2021 年的时候,ClickBench 破旧立新,建立了一个新的测试方案:

  • 数据集进行规范化处理,方便简单快速加载到多数系统中。
  • 规范化所有查询,来支持标准 SQL。这些 SQL 不会向 ClickHouse 倾斜好处、可以在每个系统上运行。
  • 实现测试自动化,让测试变得简单。只有在最坏条件下,才需要通过复制粘贴命令来运行简短的 shell 脚本。
  • 所有测试过程都可以在用户均能访问的虚拟主机上进行,并允许用户记录各类实例的运行结果。

想要在 ClickBench 测试中取得优异成绩,需要一个数据库具备出色的单机存储性能和单机执行性能。因为 ClickBench 的 SQL 都是单表的,所以对数据库的优化器能力要求不高,又因为 ClickBench 是单机部署测试,所以对数据库没有分布式能力要求。想要在 ClickBench 的 43 个 SQL 上都跑出优异成绩,需要一款数据库拥有出色的 Scan 能力、过滤能力、聚合能力、排序能力以及多核扩展能力,擅长处理应对高基数 Group By、高基数去重、正则匹配等场景。

ClickBench 是 ClickHouse 创建和使用的,但 ClickHouse 为了保证公平和对友商的尊重,多次强调自己不会在测试中做任何优化和调整。目前这套新的测试方案,对于其他友商的产品是比较容易使用的,可以在 20 分钟内完成结果复现。

近年来,因为 ClickHouse 单表查询性能享誉业界,ClickBench 榜单当前已经公布了几十家全球顶尖的分析型数据库的测试结果,包括:

在这里插入图片描述

说到这里,好奇心宝宝又有问题了,为什么 ClickHouse 自己作为运动员,还要充当裁判员,做一个分析型数据库跑分榜单呢?

ClickHouse 在 GitHub 上列举了一些同类跑分榜单的优缺点,比如 TPC-H、TPC-DS、TSBS、Brown University Mgbench、Mark Litwinschik’s NYC Taxi、Star Schema Benchmark 等等。优点就不多说了,ClickHouse 察觉的缺点主要包括“对于复杂查询有倾向性”、“需要官方认证”、“仅支持非常小的数据集”、“对 in-memory 数据库友好”。

ClickHouse 自己发起的 ClickBench,以可重复性(Reproducibility)、兼容性(Compatibility)、多样性(Diversity)、真实性(Realism)为目标,测试数据集来源于全球最大的网络分析平台之一,涵盖数据类型多样,所有上榜测试结果均可复现,能真实反映各大数据库在生产环境中的性能。不需要官方认证,也能支持大量和多样的数据集,没有明显的倾向性,对广泛数据库产品较为友好。测试按照机器型号分类,默认情况下,各数据库项目提交的版本会按照业界最为通行的 c6a.4xlarge, 500gb gp2 来进行测试。此外,被较多项目选择的还有 c6a.metal, 500gb gp2 等型号。此次打榜成功的黑马 StarRocks,就是在通用规模下获得了单表查询性能第一。
在这里插入图片描述注:StarRocks(tuned)意为,StarRocks 开启了收集查询统计信息功能,以便更精准地查询估算与计划执行。来源:ClickBench链接

问题又来了,这匹黑马 StarRocks 是谁?

StarRocks 是刚成立 2 年的分析型数据库开源项目, 以“极速统一”作为价值主张。根据 StarRocks 中文社区的官方表述,StarRocks核心能力在于复杂查询、实时分析和数据湖分析,产品可以适用于固定报表、实时看板、实时风控、末端运营、用户画像等多场景。性能方面,单表查询性能已经领先于 ClickHouse,多表 Join 性能远超 ClickHouse。从公开的新闻报道里,包括腾讯、携程、顺丰、滴滴、京东、众安保险在内的不少大型中国企业都在使用 StarRocks,且分享了关于 StarRocks 的业务实践。StarRocks 从 2021 年开始开放源代码,目前在 GitHub 上的星数超过 3100 个、全球社区贡献者超过百位。


http://www.ppmy.cn/news/239812.html

相关文章

鲁大师2022年Q3手机报告:性能跑分逼近130万大关,UI流畅榜有了新变化!

鲁大师2022年Q3手机报告来源于2022.07.01—2022.09.30日鲁大师数据中心数据,排行榜成绩均选取测试均值数据。 报告包含手机性能榜、手机芯片榜、手机流畅度排行、手机UI流畅度排行、手机AI排行、手机温度排行、安卓新增市场占比、实验室手机游戏指数共8个榜单。 因H…

这款AI绘画工具也太太太赞了!模型丰富,轻松绘画,赶快收藏起来!

现今科技发展迅速,让人工智能(AI)成为了我们日常生活中的必备之物。在艺术领域,AI技术也开始广泛应用。特别是AI绘画软件,以其高效、精准的绘画方式,已成为越来越多艺术家、设计师和普通用户绘画的首选工具…

C# WPF读取文本内容的7种方式

文章目录 前言一、界面展示二、使用步骤1.引入库2.界面代码3.后台代码(1)打开文件(2)第一种:基于FileStream,并结合它的Read方法读取指定的字节数组,最后转换成字符串进行显示。(3&a…

lex yacc flex bison

简介 lex与yacc是两个在Unix下的分别作词法分析和语法分析的工具, Linux对应flex与bison。 Yacc 与 Lex 快速入门 flex 和bison的安装和使用 Windows下安装lex(flex)与yacc(bison)

CS61B - Lec 8 - Interface inheritance

Lec8 - Inheritance 1 Lec8 - Inheritance 1Is an && Has an步骤Overriding vs OverloadingInterface inheritanceImplementation inheritanceStatic and dynamic type(重点) Lec8 - Inheritance 1 本章源于一个问题 public static String longest(SLList…

026FLEX

flex布局 CSS3弹性盒子(Flexible Box或Flexbex),是一种用于在页面上布置元素的布局模式,使得当页面布局必须适应不同的屏幕尺寸和不同的显示设备时,元素可预测地运行/列。对于许多应用程序,弹性盒子模型提供了对块模型的改进&…

LEXSTR

题目链接:http://www.spoj.com/problems/LEXSTR/ 题意是给一个字符串str,然后给出m个数对 i , j; 代表str[i] 和 str[j] 可以互相之间交换任意次 ,然后问如何交换使得这个字符串的字典序最小,输出这个字典序最小的字符…

CS61B - Lec 21 - Binary Search Tree

Lec 21 - BST Binary Search Trees概念查找插入删除 从Lec20开始,就转战CS61B Spring 2019了,18后面全变成公开课了。 本章主要讲的是Binary Search Tree,是一种非常流行的数据结构,据说各大面试中都会出现。其中用到了超多的recu…