广告
返回顶部
首页 > 资讯 > 数据库 >OLAP新秀ClickHouse性能测试
  • 743
分享到

OLAP新秀ClickHouse性能测试

OLAP新秀ClickHouse性能测试 2016-04-23 05:04:37 743人浏览 无得
摘要

CH具有以下几个特点: 列式存储,因此数据压缩比高。 向量计算,且支持多核CPU并行计算,并且执行每个sql时都力求榨干CPU性能。 基于Shared nothing架构,支持分布式方案。 支持主从复制架构。 兼容大

OLAP新秀ClickHouse性能测试

CH具有以下几个特点:

  1. 列式存储,因此数据压缩比高。
  2. 向量计算,且支持多核CPU并行计算,并且执行每个sql时都力求榨干CPU性能。
  3. 基于Shared nothing架构,支持分布式方案。
  4. 支持主从复制架构。
  5. 兼容大部分SQL语法,其语法和Mysql尤其相近。
  6. 数据实时更新。
  7. 不支持事务,不适合高频更新数据。
  8. 建议多用宽表,但不建议总是查询整数据行中的所有列。

简言之,如果你有以下业务场景,可以考虑用CH:

  1. 海量数据,但又不希望单节点的存储空间消耗太高。
  2. 宽表,为了业务方便,可能会把很多相关数据列都整合到一个表里。
  3. 基于SQL的查询方式,提高程序的适用性和可移植性。

性能测试

我选用了CH官方提供的一个测试方案:SSBM (Star Schema Benchmark)。
测试机配置:

- 腾讯云CVM主机
- 标准型S5机型
- 4核16G
- 外挂500G SSD云硬盘

数据盘采用xfs文件系统,iOScheduler采用deadline方式:

[root@yejr.me]# cat /etc/fstab
/dev/vdb /data xfs defaults,noatime,nodiratime,nobarrier 0 0

[root@yejr.me]# cat /sys/block/vdb/queue/scheduler
[MQ-deadline] kyber none

生成测试数据。

# 下载SSBM工具
[root@yejr.me]# git clone https://GitHub.com/vadimtk/ssb-dbgen.git
[root@yejr.me]# cd ssb-dbgen
[root@yejr.me]# make

# 生成测试数据,机器性能和磁盘有限,所以指定 -s 100
[root@yejr.me]# ./dbgen -s 100 -T c
[root@yejr.me]# ./dbgen -s 100 -T p
[root@yejr.me]# ./dbgen -s 100 -T s
[root@yejr.me]# ./dbgen -s 100 -T l

[root@yejr.me]# wc -l *tbl
  3000000 customer.tbl
  1400000 part.tbl
   200000 supplier.tbl

[root@yejr.me]# ls -l *tbl
-rw-r--r-- 1 root root 331529327 Mar 28 21:17 customer.tbl
-rw-r--r-- 1 root root 140642413 Mar 28 21:17 part.tbl
-rw-r--r-- 1 root root  19462852 Mar 28 21:17 supplier.tbl

创建测试表,根据CH官网提供的建表DDL直接创建即可,参考这里:Star Schema Benchmark Https://clickhouse.tech/docs/en/getting_started/example_datasets/star_schema/ )。

导入数据。

[root@yejr.me]# clickhouse-client --query "INSERT INTO customer FORMAT CSV" < customer.tbl
[root@yejr.me]# clickhouse-client --query "INSERT INTO part FORMAT CSV" < part.tbl
[root@yejr.me]# clickhouse-client --query "INSERT INTO supplier FORMAT CSV" < supplier.tbl
[root@yejr.me]# clickhouse-client --query "INSERT INTO lineorder FORMAT CSV" < lineorder.tbl

这是导入测试数据的耗时以及导完后表空间大小的数据。

表表数据量耗时(秒)tbl文件大小表空间大小customer3,000,0002.923317M116Mpart1,400,0001.573135M25Msupplier200,0000.30519M7.7Mlineorder600,037,902837.28867G17Glineorder_flat600,037,9022318.616

54G

只看最大的lineorder表,对tbl文件的压缩比可以达到4:1,如果是相对常规的OLTP数据库,其压缩比显然还要更高。

运行SSBM的几个标准查询耗时

SQL耗时(秒)扫描行数(10万)返回行数Q1.12.12391.011Q1.20.3207.751Q1.30.0531.811Q2.117.979600.04280Q2.23.625600.0456Q2.33.263600.047Q3.16.906546.67150Q3.25.330546.67600Q3.33.666546.6724Q3.40.0587.764Q4.110.110600.0435Q4.21.928144.42100Q4.31.373144.42800

每次扫描这么多数据量,但这些统计分析为主的SQL查询耗时却并不大,足见CH的计算性能了。

今天先简单介绍到这里,以后有机会再继续分享。

全文完

由我主讲的知数堂「mysql优化课」第17期已发车,我们的课程从第15期就升级成MySQL 8.0版本了,现在上车刚刚好,一起开启MySQL 8.0的修行之旅吧

另外,我在腾讯课堂《MySQL性能优化》精编课程已完结,本课程讲解读几个MySQL性能优化的核心要素:合理利用索引,降低锁影响,提高事务并发度

您可能感兴趣的文档:

--结束END--

本文标题: OLAP新秀ClickHouse性能测试

本文链接: https://www.lsjlt.com/news/5801.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • OLAP新秀ClickHouse性能测试
    CH具有以下几个特点: 列式存储,因此数据压缩比高。 向量计算,且支持多核CPU并行计算,并且执行每个SQL时都力求榨干CPU性能。 基于Shared nothing架构,支持分布式方案。 支持主从复制架构。 兼容大...
    99+
    2016-04-23
    OLAP新秀ClickHouse性能测试
  • mongo性能测试
                        Mongodb介绍Mongodb介绍一 主要特点 MongoDB的...
    99+
    2022-10-18
  • MongoDB性能测试与Python测试代码
    最近参与公司一个项目,计划对在线平台的大规模查询做到快速响应,预估数据总量大概在2-3亿条,数据库并发量大概每秒1500,一年后并发大概3000每秒,经过在Redis和mongodb之间艰难的选择之后,决定...
    99+
    2022-10-18
  • Android应用性能测试
      前提   所有的功能分支已完成   启动:   1. 启动入口:桌面正常启动,近运行启动,所有程序列表中启动,锁屏快捷启动   2. 其他入口:从其他程序开启应...
    99+
    2022-06-06
    性能 性能测试 测试 Android
  • Android性能测试初探
      功耗   · 功耗测试主要从以下几个方面入手进行测试   · 测试手机安装目标APK前后待机功耗无明显差异   · 常见...
    99+
    2022-06-06
    测试 Android
  • Android性能测试-内存
      前言:   近阶段都在探索android性能测试方面的东西,其中一个很重要的指标是内存。对于内存,主要是一些gc是不是及时,或者说一些引用有没有及时释放,有没有导致o...
    99+
    2022-06-06
    测试 Android
  • MongoDB性能测试代码
    写入100万条记录,建立索引,使用索引连续查询 10万次。 use admin;//连接资料库  db.auth("mongoAdmin","123456&...
    99+
    2022-10-18
  • pgbench性能测试分析
    本篇内容主要讲解“pgbench性能测试分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“pgbench性能测试分析”吧!--pgbench 测试&n...
    99+
    2022-10-18
  • sar性能测试工具
    yum install sysstat=============================================六,sar -n命令是查看网络信息和流通速度。================...
    99+
    2022-10-18
  • MySQL索引性能测试
    MySQL索引性能测试   blog文档结构图:   很长一段时间没学习MySQL了,一直致力于oracle的研究,最近得空了就再拾起MyS...
    99+
    2022-10-18
  • 阿里云新款服务器性能测试在哪里?
    阿里云是全球领先的云计算服务提供商,其服务器性能测试平台备受业界关注。近年来,阿里云不断推出新款服务器,以满足客户不同的需求。那么,阿里云新款服务器性能测试在哪里呢?本文将为您揭开这个谜团。 阿里云新款服务器性能测试平台:阿里云新款服务器性...
    99+
    2023-12-10
    阿里 性能测试 新款
  • 前端单元测试之UI测试功能性代码测试教程
    目录前言UI测试:功能性代码测试:让人闻风丧胆的单元测试代码测试代码Jest介绍一、基础教程安装源码开发测试用例编写开始测试二、核心API全局方法匹配器异步代码测试回调Promise...
    99+
    2022-11-13
    前端单元测试 前端UI测试 前端功能性代码测试
  • Redis Enterprise新版优化线性扩展,性能测试有点厉害!
    在Redis Enterprise 5.0版本中,其团队引入了对开源(OSS)集群API的支持,允许Redis Enterprise集群通过添加分片和节点以线性方式进行扩展。本文给出了第一个线性扩展基准测...
    99+
    2022-10-18
  • 云服务器性能测试
    云服务器性能测试是指测试云服务器的整体性能,包括服务器的处理能力、存储容量、带宽、性能等方面的性能。下面我将介绍一下云服务器性能测试的步骤和测试方法。 性能测试的基础 性能测试需要具备一些基础知识,例如测试用例设计、测试方法、测试环境...
    99+
    2023-10-26
    性能测试 服务器
  • linux怎么测试io性能
    在Linux上测试IO性能可以使用以下工具和方法:1. 使用dd命令:dd命令可以用于复制文件、转换文件的格式以及执行其他操作。通过...
    99+
    2023-10-10
    linux
  • Android性能测试工具:Emmagee
      Emmagee是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。   支持SDK:Android2.2以及以上版本   Emmagee...
    99+
    2022-06-06
    工具 测试工具 测试 Android
  • PostgreSQL11 tpcb性能测试分析
    本篇内容介绍了“PostgreSQL11 tpcb性能测试分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成...
    99+
    2022-10-18
  • ubuntu如何测试gpu性能
    ubuntu测试gpu性能的方法:测试系统自动分配设备示例:#-*- coding:utf-8 -*-import tensorflow as tf# 新建一个 graph.a = tf.constant([1.0, 2.0, 3.0, 4...
    99+
    2022-10-16
  • adb shell之APP性能测试
    查看当前运行软件的包名和类名: adb shell "dumpsys window | grep mCurrentFocus" 进入adb shell: adb shell 查看CPU占用率: top | grep 包名(只查看指定包名...
    99+
    2023-08-17
    adb
  • SQL性能优化方法及性能测试
    目录笛卡尔连接分页limit的sql优化的几种方法count 优化方案笛卡尔连接 例1: 没有携带on的条件字句,此条slq查询的结构集等价于,a表包含的条数*b表包含的乘积: se...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作