一、ClickHouse简介

1、基础简介

Yandex开源的数据分析的数据库,名字叫做ClickHouse,适合流式或批次入库的时序数据。ClickHouse不应该被用作通用数据库,而是作为超高性能的海量数据快速查询的分布式实时处理平台,在数据汇总查询方面(如GROUP BY),ClickHouse的查询速度非常快。

下载仓库:https://repo.yandex.ru/clickhouse
中文文档:https://clickhouse.yandex/docs/zh/

2、数据库特点

  • 列式数据库

列式数据库是以列相关存储架构进行数据存储的数据库,主要适合于批量数据处理和即时查询。

  • 数据压缩

在一些列式数据库管理系统中不是用数据压缩。但是, 数据压缩在实现优异的存储系统中确实起着关键的作用。

  • 数据的磁盘存储

许多的列式数据库只能在内存中工作,这种方式会造成比实际更多的设备预算。ClickHouse被设计用于工作在传统磁盘上的系统,它提供每GB更低的存储成本。

  • 多核心并行处理

大型查询可以以很自然的方式在ClickHouse中进行并行化处理,以此来使用当前服务器上可用的所有资源。

  • 多服务器分布式处理

在ClickHouse中,数据可以保存在不同的shard上,每一个shard都由一组用于容错的replica组成,查询可以并行的在所有shard上进行处理。

  • 支持SQL和索引

ClickHouse支持基于SQL的查询语言,该语言大部分情况下是与SQL标准兼容的。支持的查询包括GROUPBY,ORDERBY,IN,JOIN以及非相关子查询。不支持窗口函数和相关子查询。按照主键对数据进行排序,这将帮助ClickHouse以几十毫秒的低延迟对数据进行特定值查找或范围查找。

  • 向量引擎

为了高效的使用CPU,数据不仅仅按列存储,同时还按向量(列的一部分)进行处理。

  • 实时的数据更新

ClickHouse支持在表中定义主键。为了使查询能够快速在主键中进行范围查找,数据总是以增量的方式有序的存储在MergeTree中。因此,数据可以持续不断高效的写入到表中,并且写入的过程中不会存在任何加锁的行为。

二、Linux下安装流程

1、下载仓库

curl -s
https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh
| sudo os=centos dist=7 bash

2、查看安装包

sudo yum list 'clickhouse*'

3、安装服务

sudo yum install -y clickhouse-server clickhouse-client

4、查看安装列表

sudo yum list installed 'clickhouse*'

控制台输出

Installed Packages
clickhouse-client.noarch
clickhouse-common-static.x86_64
clickhouse-server.noarch

5、查看配置

  • cd /etc/clickhouse-server/
  • vim config.xml
数据目录:/var/lib/clickhouse/
临时目录:/var/lib/clickhouse/tmp/
日志目录:/var/log/clickhouse-server
HTTP端口:8123
TCP 端口:9000

6、配置访问权限

config.xml文件中去掉下面配置的注释。

<listen_host>::</listen_host> 

7、启动服务

/etc/rc.d/init.d/clickhouse-server start

8、查看服务

ps -aux |grep clickhouse

三、基础操作

1、建表语句

CREATE TABLE cs_user_info (`id` UInt64,`user_name` String,`pass_word` String,`phone` String,`email` String,`create_day` Date DEFAULT CAST(now(),'Date')
) ENGINE = MergeTree(create_day, intHash32(id), 8192)

注意事项:官方推荐引擎,MergeTree

Clickhouse 中最强大的表引擎当属MergeTree(合并树)引擎及该系列(*MergeTree)中的其他引擎。MergeTree引擎系列的基本理念如下。当你有巨量数据要插入到表中,你要高效地一批批写入数据片段,并希望这些数据片段在后台按照一定规则合并。相比在插入时不断修改(重写)数据进存储,这种策略会高效很多。

2、批量写入

INSERT INTO cs_user_info (id,user_name,pass_word,phone,email)
VALUES (1,'cicada','123','13923456789','cicada@com'),(2,'smile','234','13922226789','smile@com'),(3,'spring','345','13966666789','spring@com');

3、查询语句

SELECT * FROM cs_user_info ;
SELECT * FROM cs_user_info WHERE user_name='smile' AND pass_word='234';
SELECT * FROM cs_user_info WHERE id IN (1,2);
SELECT * FROM cs_user_info WHERE id=1 OR id=2 OR id=3;

查询语句和操作MySQL数据库极其相似。

完结。

centos7 校正linux系统时间_Linux系统:Centos7下搭建ClickHouse列式存储数据库相关推荐

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

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

  2. centos7 校正linux系统时间_Linux系统:centos7下安装Jdk8、Tomcat8、MySQL5.7环境

    一.JDK1.8 环境搭建 1.上传文件解压 [root@localhost mysoft]# tar -zxvf jdk-8u161-linux-x64.tar.gz[root@localhost ...

  3. windows下命令行修改系统时间;修改系统时间的软件

    找了很久,都没有找到,还找了关键词 dos下修改系统时间 因为看到linux下修改系统时间是用hwclock 命令写入主板芯片. 而我由于某些原因想自动化修改系统时间,所以找windows下修改系统时 ...

  4. centos7 校正linux系统时间_基于centos7系统部署NTP服务及配置时间定时同步

    概述 linux服务器在提供服务时,要和其他机器进行请求的交互,实际生产环境中,可能因为时间不同步,导致了服务异常. 下面介绍下怎么部署NTP服务来解决这个问题. ps:强烈吐槽下头条这个新排版功能, ...

  5. Centos7校正Linux系统时间(超详细)

    1.使用date命令查看当前系统时间.如下图所示: 2.使用命令rm -f /etc/localtime删除本地时间文件.如下图所示: 3.使用命令cp /usr/share/zoneinfo/Asi ...

  6. linux系统中防止系统时间,设置系统时间与在Linux中

    设置系统时间的GPS timestamp_t结构与GPS在Linux的设置系统时间与在Linux中 timestamp_t结构 大家好, 我想,一旦我得到一个succesfull GPS锁定(写代码A ...

  7. linux 嵌入式 快照_Linux 系统之Systemd

    标签: 子贡问为仁.子曰:"工欲善其事,必先利其器.居是邦也,事其大夫之贤者,友其士之仁者."--孔子(春秋)<论语·卫灵公> [工欲善其事,必先利其器] 掌握一门技术 ...

  8. Linux系统时间、系统时区和时钟同步的部分理解

    1.写在前面 因为最近一段时间以来,本人在项目遇到的因为Linux系统时间所引发的问题比较多,所以在此进行总结. 2.Linux系统时间与BIOS硬件时间之间的关系 2.1.RTC芯片.i2c总线和B ...

  9. linux硬件时间与系统时间不同步,Linux系统时钟和硬件时钟不一致

    在做DB2 集群复制的时候要求两台主机想时间一致. 但是在一台主机上系统时间和硬件时间相差12个小时左右:手动同步后,重启后又相差12个小时左右. 为什么会是这样的,先介绍下系统时钟和硬件时钟的区别: ...

最新文章

  1. CBWFQ技术简介及应用配置事例
  2. 每日一皮:总觉得这个咖啡杯有点奇怪...
  3. 如何优化才能赢得搜索引擎“欢心”,提升抓取量?
  4. sphinx索引分析——文件格式和字典是double array trie 检索树,索引存储 – 多路归并排序,文档id压缩 – Variable Byte Coding...
  5. legend3---3、lavarel页面post请求错误之后跳转
  6. Android零基础入门第33节:Android事件处理概述
  7. 单个下拉框数据保持问题
  8. P1579哥德巴赫猜想
  9. CodeIgniter辅助函数
  10. php设置文件权限问题,php如何设置文件权限
  11. 【Java】一文搞懂 Java 中的枚举,写得非常好!
  12. UE4源码下载与配置sin文件
  13. XMind8 Update9下载安装
  14. (基础)SpringCloud Alibaba Nacos作为多环境配置中心
  15. ECCV 2020 五项大奖出炉!普林斯顿邓嘉获最佳论文奖
  16. git reset 怎么还原_git 本地修改被reset后怎么恢复
  17. 支付宝二维码支付文档,找了好久,记在这里
  18. 开源WordPress博客主题二次元风-LoliMeow主题
  19. 物流仓储行业专业术语解释
  20. urllib2 解析

热门文章

  1. python七段数码管倒计时_python实现七段数码管和倒计时效果
  2. lasso回归_一文读懂线性回归、岭回归和Lasso回归
  3. 接口里面的方法都是抽象方法吗_大家都在讲高中学习的方法有哪些,那方法和技巧有什么异同的吗?...
  4. python程序设计上机实践第三章答案_20192419 实验三《Python程序设计》实验报告
  5. DIY 主机 所有AMD IntelCPU及主板
  6. 洛谷P1725琪露诺【单调队列+dp】
  7. 用户态与内核态 文件流与文件描述符 简介【转】
  8. excel 中编程:vba 入门
  9. 对github的初步认识以及对软件技术基础课程的期待
  10. 车联网领域,传统TSP企业做错了什么 ?