文章目录

  • ClickHouse简介
    • 列式存储
  • 表引擎
    • MergeTree
  • CentOS7安装ClickHouse(21版)
    • 1、CentOS环境配置
      • 1.1、修改限制
      • 1.2、禁用 SELINUX
      • 1.3、关闭防火墙
      • 1.4、安装相关依赖
    • 2、单机部署
      • 2.1、下载
      • 2.2、文件上传并安装
      • 2.3、配置文件
    • 3、关闭开机自启
    • 4、启动服务端
    • 5、使用客户端连接服务端
  • 补充:ClickHouse最新稳定版下载方法

ClickHouse简介

  • ClickHouse:开源的 高效的 列式存储OLAP 数据库管理系统
  • 官方教学:https://clickhouse.tech/docs/en/
主要特点 备注
列式存储 OLAP场景下宽表居多,假设从100列的宽表中只取5列,列式比行式大幅度节省IO
数据存于硬盘
支持SQL
支持索引 Primary Index、Secondary Indexes…
支持数据压缩 除了通用压缩编解码器之外,ClickHouse还提供针对特定类型数据的专用编解码器
多核并行处理 单个查询 可对 数据 按索引原理 划分为多个部分,多个CPU并行处理数据的各个部分
单条查询充分利用多CPU,极大提升了大数据查询效率,但不利于并发多条查询
分布式服务器 数据可保存在不同的shard上,每个shard由一组用于容错的replica组成
查询可在所有shard上并行
支持近似计算 允许牺牲数据精度的情况下对查询进行加速
支持数据副本 异步多主复制:数据被写入任一可用副本后,异步分发给其他副本
故障出现后,多数情况下能自动恢复,少数复杂情况下需要手动恢复
支持数据实时更新 数据以增量方式有序地存储在MergeTree中
数据写入的过程中不加锁
向量引擎 数据可按向量进行处理

列式存储

行式

列式

表引擎

常见表引擎 家族 说明 索引 备注
TinyLog Log Family 以列文件的形式保存在硬盘
数据写入时,追加到文件末尾
不支持 可用于存储小批量处理的中间数据
Memory 其它特定 数据以未压缩的原始形式直接保存在内存 不支持 适用于少量数据的高性能查询
MergeTree MergeTree Family 支持 列式存储、分区、稀疏索引、二级索引… 支持 单节点ClickHouse实例的默认表引擎

MergeTree

  1. 大量数据插入表时,先快速将数据写入表中的各个部分,再对各个部分数据进行后台合并
  2. 创建一个 空间占用不大的 稀疏索引 来 提高查询效率
  3. 可使用分区
  4. 数据支持 复制副本 和 采样

图解稀疏索引

适用于:范围查询过滤
不适用于:点对点查询

CentOS7安装ClickHouse(21版)

1、CentOS环境配置

1.1、修改限制

sudo vim /etc/security/limits.conf

在文件末尾添加

* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
参数 全称? 说明
* 表示所有用户
soft 警告设定,允许超过该设定值,但会有警告
hard 严格设定,不允许超过该设定值
nofile number open file 最大打开文件数量
nproc number process 系统中最大可同时存在的进程数

1.2、禁用 SELINUX

sudo vim /etc/selinux/config

修改内容

SELINUX=disabled

1.3、关闭防火墙

sudo systemctl disable firewalld
sudo systemctl stop firewalld

1.4、安装相关依赖

sudo yum install -y libtool
sudo yum install -y *unixODBC*

2、单机部署

2.1、下载

http://repo.red-soft.biz/repos/clickhouse/stable

https://download.csdn.net/download/Yellow_python/21792011

2.2、文件上传并安装

上传4个文件

ls -l查看是否上传成功

安装这4个文件

sudo rpm -ivh *.rpm

2.3、配置文件

修改配置文件模式

sudo chmod 751 /etc/clickhouse-server/config.xml

编辑配置文件

sudo vim /etc/clickhouse-server/config.xml

<listen_host>0.0.0.0</listen_host>的注解打开(第146行)使本机以外的客户端也能访问
若报Code: 210. DB::NetException: Connection refused (localhost:9000)就把0.0.0.0改成::

之后,开启服务后,外部也能访问;sudo netstat -nltp | grep clickhouse可查看网络端口

3、关闭开机自启

sudo systemctl disable clickhouse-server

4、启动服务端

sudo systemctl start clickhouse-server

ps -ef | grep clickhouse查看进程

5、使用客户端连接服务端

clickhouse-client -m

-m全称为multiline,(按分号)多行提交模式

客户端界面

客户端版本:21.4.6.55

补充:ClickHouse最新稳定版下载方法

官方安装命令

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://packages.clickhouse.com/rpm/clickhouse.repo
sudo yum install -y clickhouse-server clickhouse-clientsudo /etc/init.d/clickhouse-server start
clickhouse-client # or "clickhouse-client --password" if you set up a password.

官网下载地址:https://packages.clickhouse.com/rpm/stable/
官方安装方法可以下载最新版,如果速度太慢,可改用阿里云镜像台
https://mirrors.aliyun.com/clickhouse/rpm/stable/
阿里云镜像不一定有最新稳定版

wget clickhouse-client-版本号.x86_64.rpm
wget clickhouse-common-static-版本号.x86_64.rpm
wget clickhouse-common-static-dbg-版本号.x86_64.rpm
wget clickhouse-server-版本号.x86_64.rpm

注意,要下载相同的版本号

大数据(5m)ClickHouse极速入门相关推荐

  1. 大数据之clickhouse安装部署

    一.clickhouse简介 ClickHouse是俄罗斯的Yandex于2016年开源的一个用于联机分析(OLAP:Online Analytical Processing)的列式数据库管理系统(D ...

  2. 大数据培训ClickHouse表引擎

    表引擎 表引擎(即表的类型)决定了: 1)数据的存储方式和位置,写到哪里以及从哪里读取数据 2)支持哪些查询以及如何支持. 3)并发数据访问. 4)索引的使用(如果存在). 5)是否可以执行多线程请求 ...

  3. 大数据技术之Canal入门篇

    大数据技术之Canal入门篇 文章目录 大数据技术之Canal入门篇 写在前面 第 1 章 Canal 入门 1.1 什么是 Canal 1.2 MySQL 的Binlog 1.2.1 什么是 Bin ...

  4. 大数据学习指南从入门到精通

    目录 大数据学习指南从入门到精通 前言 一.大数据基础 二.大数据必学Java基础 三.ZooKeeper 四.大数据环境搭建 五.Hadoop 六.Hive 七.HBase 八.Kafka 九.Sc ...

  5. 大数据竞赛平台——Kaggle 入门

    大数据竞赛平台--Kaggle 入门篇 这篇文章适合那些刚接触Kaggle.想尽快熟悉Kaggle并且独立完成一个竞赛项目的网友,对于已经在Kaggle上参赛过的网友来说,大可不必耗费时间阅读本文.本 ...

  6. 大数据竞赛平台——Kaggle 入门篇

    这篇文章适合那些刚接触Kaggle.想尽快熟悉Kaggle并且独立完成一个竞赛项目的网友,对于已经在Kaggle上参赛过的网友来说,大可不必耗费时间阅读本文.本文分为两部分介绍Kaggle,第一部分简 ...

  7. 2018大数据学习路线从入门到精通

    最近很多人问小编现在学习大数据这么多,他们都是如何学习的呢.很多初学者在萌生向大数据方向发展的想法之后,不免产生一些疑问,应该怎样入门?应该学习哪些技术?学习路线又是什么?今天小编特意为大家整理了一份 ...

  8. 大数据之Hadoop3简单入门(一)(通俗易懂)

    目录 一. 大数据基础概论 1.1 何为大数据 2.1 大数据特点(4V) 2.1.1 Volume(大量) 2.2.2 Velocity(高速) 2.2.3 Varity(多样) 2.2.4 Val ...

  9. 大数据丨ClickHouse在京东能源管理平台的实践

    ClickHouse是一款面向大数据场景下的OLAP数据库,相比于传统的基于Hadoop生态圈的OLAP大数据分析系统,ClickHouse具有极致的查询性能.轻量级的架构设计及维护简单等优势.目前社 ...

最新文章

  1. xcode升级之后,VVDocument失效的解决办法
  2. ubuntu 9.10 输入法问题解决方法
  3. 实现输入提示 layui_ASP.NET Core SignalR :学习消息通讯,实现一个消息通知
  4. linux shell变量作用域,Shell变量的作用域:Shell全局变量、环境变量和局部变量
  5. 《C语言及程序设计》实践参考——体重监测器
  6. Linux安装Gitlab
  7. c语言中int(*t) n,C语言基础知识(下)
  8. .NET利用委托实现动态查询
  9. 解决SVN Files 的值“xxxxxxx .mine”无效 问题
  10. Linux chkconfig命令
  11. 硬盘安装 Ubuntu 9.04 与 XP 双系统 (含 Grub 不写入 MBR 的方法)
  12. 计算机关闭系统剪切板上的内容,如何在Win10中打开/关闭和清除剪贴板历史记录...
  13. Fatal error: Call to undefined function ParCv() in E:\AppServ\www\include\dedesql.class.php on line
  14. 调用html事件,HTML 事件
  15. 谷歌、百度、必应的搜索技巧
  16. 变频泵 计算机控制技术,变频泵站节约能耗的计算机控制技术浅析
  17. activiti 根据角色指定执行人(十二)
  18. 数字图像处理——第十章(图像分割)
  19. 陷阱技术探秘 ──动态汉化Windows技术的分析 (转)
  20. 解决百度地图位置标注不在中心的问题

热门文章

  1. 【MATLAB】点云数据处理程序可视化实现1
  2. C++ 涛涛的方向感
  3. 静态HTML CSS网站制作成品 简单的学生网页作业代码【带视频演示】
  4. 小玉家的电费//c++
  5. 北京辰星中医李慧英医生简介
  6. datepart函数用法及其与sqlserver depart函数、Mysql week函数的差异
  7. 手势比心,绽放最美的烟火【内附源码】
  8. 项目总结 - ts中的declare let type: any和对.d.ts文件类型的认识
  9. latex 三线表 与调整表格与上下文的间距
  10. MongoDB---介绍和基本使用