ClickHouse介绍

  • ClickHouse来自哪里?

俄罗斯最大的搜索公司Yandex,在clickhouse的配置文件中我们也会看到yandex的影子。

  • ClickHouse是什么?

ClickHouse是一个开源的列式数据库(DBMS),主要用于在线分析处理查询(OLAP),于2016年开源,采用C++开发。凭借优秀的性能,市场反应非常热烈。

  • 什么是列式数据库?

相对行式数据库,像Mysql、Oracle、SqlServer等都是行式存储,是把同一行的数据放到相邻同一数据块种,而列式存储是把同一列的数据放到相邻同一数据块种,这样在进行计算类查询时,可以大大减少IO消耗,返回结果更快,采用列式存储后在进行数据记录写入的时候会麻烦一些。

行式存储:

列式存储:

性能测试

  • ClickHouse: New Open Source Columnar Database by Percona
  • Column Store Database Benchmarks by Percona
  • 1.1 Billion Taxi Rides on ClickHouse & an Intel Core i5 by Mark Litwintschik
  • 1.1 Billion Taxi Rides: 108-core ClickHouse Cluster by Mark Litwintschik
  • ClickHouse vs Amazon RedShift Benchmark by Altinity
  • Geospatial processing with Clickhouse by Carto
  • ClickHouse and Vertica comparison by zhtsh (machine translation from Chinese)
  • ClickHouse and InfiniDB comparison by RamboLau (machine translation from Chinese)

主要特性

  • 丰富的表引擎,主要用到以下表引擎

MergeTree引擎家族:ReplicatedMergeTree

Distributed分布式引擎

  • 矢量计算:减少调用次数,适用现代CPU的扩展指令集支持SIMD
  • 丰富的SQL和函数
  • 强有力的数据压缩:相对mysql压缩10倍
  • 分布式处理
  • 列式存储:降低io消耗
  • 数据复制完整性
  • 集群式管理
  • 可直接读取MYSQL数据

       待完善功能:

  • 不支持二级索引
  • 不支持事物:不适合OLTP
  • 低并发:不适合高QPS的KV存储
  • 对长文本支持差:建议用ES

架构:采用分布式+高可用集群

  1. Clickhouse分布式通过配置文件来实现,同一集群配置多个shard,每个shard都配置相同的配置文件;而高可用需要借助zookeeper来实现,表采用ReplicatedMergeTree引擎,共享同一个ZK路径的表,会相互同步数据;

  1. ReplicatedMergeTree,复制引擎,基于MergeTree,实现数据复制,即高可用;
  2. Distributed,分布式引擎,本身不存储数据,将数据分发汇总;
  3. app不管连接哪台shard,通过访问Distributed引擎表,读取的数据都是一致的。

官方网站:

https://clickhouse.yandex/docs/en

clickhouse 列式存储数据库介绍相关推荐

  1. centos7 校正linux系统时间_Linux系统:Centos7下搭建ClickHouse列式存储数据库

    一.ClickHouse简介 1.基础简介 Yandex开源的数据分析的数据库,名字叫做ClickHouse,适合流式或批次入库的时序数据.ClickHouse不应该被用作通用数据库,而是作为超高性能 ...

  2. Linux系统:Centos7下搭建ClickHouse列式存储数据库

    本文源码:GitHub·点这里 || GitEE·点这里 一.ClickHouse简介 1.基础简介 Yandex开源的数据分析的数据库,名字叫做ClickHouse,适合流式或批次入库的时序数据.C ...

  3. HBase是列式存储数据库吗

    HBase是列式存储数据库吗 导语 行式数据库和列式数据库 HBase是列式数据库吗? 本文转载自过往记忆(https://www.iteblog.com/),原文链接:https://www.ite ...

  4. 列存储相关概念和常见列式存储数据库(Hbase、德鲁依)

    Table of Contents 列式存储数据库 Examples of Column Store DBMSs Hbase Table Row Column Column Family Column ...

  5. 【讨论】大数据环境下 列式存储数据库与Exadata一体机哪个更有优势呢?

    PS:大家可以从 成本.性能.性价比.管理易用度 等方面 谈谈自己的想法 不了峰  发表于 2012-7-2 09:26:01 : 列式数据库,我选 用Sybase IQ 虽然我没有接触过Exadat ...

  6. 什么是列式存储数据库

    列存储不同于传统的关系型数据库,其数据在表中是按行存储的,列方式所带来的重要好处之一就是,由于查询中的选择规则是通过列来定义的,因此整个数据库是自动索引化的.按列存储每个字段的数据聚集存储,在查询只需 ...

  7. 升级JSONB列式存储,Hologres助力淘宝搜索2022双11降本增效!

    作者:陆晨炜(花名遣云)阿里巴巴智能引擎事业部数据开发 前言: 2022年的双11,阿里淘宝搜推集群承载上千万每秒的的流量峰值,消费者的每一次浏览.点击都通过搜推集群进行流转,与往年双11不同的是,降 ...

  8. 列式存储ClickHouse(一)概述

    这里写目录标题 概述 优势特性 缺点特性 性能 安装 测试 创建表 导入数据 查询数据 ClickHouse,是一个快速,开源,OLAP的数据库管理系统.ClickHouse是列式存储的,支持实时使用 ...

  9. 一文了解Gauss数据库:开发历程、OLTPOLAP特点、行式列式存储,及与Oracle和AWS对比

    摘要:华为在IT的底层架构,逐步搭建起自己的基础架构,建立华为生态.我们这次详解华为数据库,并对目前主流的数据库进行对比.只有对比,才能发现不同. 数据库的重要性&华为推出新一代Gauss数据 ...

最新文章

  1. 2022-2028年中国女式西装行业研究及前瞻分析报告
  2. 区块链的技术——账本是去中心化的分布式存储,加密+校验(哈希二叉树)+多数选举来防止篡改...
  3. linux嵌套字幕工具,Linux(NAS通用)下自动匹配射手字幕脚本
  4. strrchr php,php strstr() strrchr() strpos() strrpos()函数_PHP教程
  5. 虚拟机克隆改变IP地址,配置环境及免密设置
  6. STM32 串口接收流程-串口接收中断
  7. [CMake] message 打印变量值
  8. 【NLTK基础】一文轻松使用NLTK进行NLP任务(附视频)
  9. 华南理工大学计算机专业研究生分数线,2020华南理工大学研究生分数线汇总(含2016-2020历年复试)...
  10. Python安装教程:
  11. 聚焦数字经济新基建,复杂美再获认可
  12. 基于UML软件建模的企业人事管理系统
  13. 什么是透视?什么是一点透视?
  14. 计算机桌面没有有了怎么添加,电脑里没有便签小工具怎么办?办公电脑上怎么添加一款方便记事的桌面便签软件...
  15. xshell文件传输乱码_在Xshell中使用rz命令上传文件出现乱码且文件无法删除的解决办法...
  16. 达人评测 麒麟9000、麒麟990e和苹果a15 哪个好
  17. linux设备驱动模型-linux驱动开发第5部分-朱有鹏-专题视频课程
  18. 机器学习char1 机器学习基础
  19. Zcash中的加解密机制
  20. 李开复解密微软成功之道 盖茨鲍尔默好搭档(zz)

热门文章

  1. 插入排序详解及递归实现
  2. element el-dropdown使用下拉菜单实现查看更多的效果
  3. Hexo-免费个人博客搭建框架使用
  4. EOS DApp开发入门(一)
  5. linux+家庭+媒体服务器,Linux下搭建可随时随地传输音乐的个人流媒体服务器
  6. Ubuntu 输入法的切换
  7. iphone不能网络连接到服务器未响应,iphone用usb上网没反应怎么办
  8. 伪原创视频怎么做 视频md5修改批量修改器
  9. TLB之flush操作[二]
  10. ContextCapture使用总结