列式数据库~clickhouse 场景以及安装
一 简介:列式数据库clickhouse的安装与基本操作
二 基本介绍:ClickHouse来自俄罗斯,是一款列式数据库
三 适用场景: 简单类型的大数据统计
四 限制
1 不支持更新操作,不支持事务
2 不支持二级索引,只有主键(主键包含单列主键和联合主键)
3 对精度相关类型有限制,包括存储和计算(时间类型经过验证最新版本已经支持)
4 有限的SQL支持,join实现与众不同。如果需要在从MySQL或Spark进行迁移,则可能必须重新编写包含联接的所有查询。
5 不支持窗口功能
6 复制集群不支持create,drop等操作
7 delete删除大量数据可能有延迟,如果删除全表数据建议使用truncate
五 优势
1 列式存储数据库,数据压缩和查询效率对比mysql有了很大的提升
2 关系型、支持大部分标准SQL
3 针对MYSQL的数据迁移是非常友好的,不再需要第三方工具
4 分布式并行计算,把单机性能压榨到极限
5 复制集群
1极高的同步性能,支持多写
2 拥有数据校验功能,能保持复制的一致性
3 有很高的扩展性
6数据量级能达到PB级别
六 引擎推荐
1 MergeTree,是CK里最Advanced的引擎,性能超高,单机写入可以达到50w峰值,查询性能非常快,单台DB首选
2 ReplicatedMergeTree,基于MergeTree,同时引入ZK,做了复制,
3 Distributed,分布式引擎,本身不存储数据,可认为就是一张View,如果写入,会把请求丢到集群里的节点(有算法控制),如果查询,会帮你做查询转发再聚合返回 集群首选
七 安装-单机部署
curl -s https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh |bash
如果按照失败,需要禁用IPV6 echo 1 > /proc/sys/net/ipv6/conf/eth0/disable_ipv6
yum install -y clickhouse-server clickhouse-client
启动
service clickhouse-server start
登录
clickhouse-client
如果因为网络问题无法安装成功,需要自行下载四个rpm包
clickhouse-server-common clickhouse-server clickhouse-common-static clickhouse-client
八 配置文件
/etc/clickhouse-server
config-preprocessed.xml
config.xml 数据库相关配置->具体配置请参考文档,这里只列出一些基本
<http_port>8123</http_port>//http端口
<tcp_port>9000</tcp_port>//tcp端口
<interserver_http_port>9009</interserver_http_port>//服务端口,和复制有关
<--data dictory-->
<path>/var/lib/clickhouse/</path>//数据存储目录
<max_connections>4096</max_connections>//最大连接数
<max_concurrent_queries>100</max_concurrent_queries>//并发查询连接数
users-preprocessed.xml
users.xml
九 常见操作
十 补充
1 https://packagecloud.io/altinity/clickhouse rpm包下载
2 一定要选择社区最新的版本,重要的话说三遍,因为最新版是最完整的状态
列式数据库~clickhouse 场景以及安装的更多相关文章
- 数仓选型必列入考虑的OLAP列式数据库ClickHouse(上)
概述 定义 ClickHouse官网地址 https://clickhouse.com/ 最新版本22.4.5.9 ClickHouse官网文档地址 https://clickhouse.com/do ...
- 列式数据库~clickhouse 底层存储原理
简介:今天介绍列式数据库的一些基本原理 一 数据目录 Data目录 数据存储目录,数据按照part分成多个文件夹,每个文件夹下存储相应数据和对应的元信息文件 Metadata 表定义语句,存储所有表 ...
- 数仓选型必列入考虑的OLAP列式数据库ClickHouse(中)
实战 案例使用 背景 ELK作为老一代日志分析技术栈非常成熟,可以说是最为流行的大数据日志和搜索解决方案:主要设计组件及架构如下: 而新一代日志监控选型如ClickHouse.StarRocks特别是 ...
- 列式数据库~clickhouse日常管理
clickhouse日常管理一 变量相关 1 查看变量 system.setting相关表 2 设置变量 set variables= 请注意这里是session级别,如果想永久生 ...
- 列式数据库~clickhouse问题汇总
一 简介:常见的clickhouse 问题汇总 二 问题系列 1 内存问题 Code: 241. DB::Exception: Received from localhost:9000, : ...
- 列式数据库~clickhouse 副本集架构的搭建
clickhouse 搭建副本集 一 原理: 1 依赖ZK,ZK的基础上,ZK存储数据库元数据 2 使用复制表引擎创建复制表,包括ZK路径和副本名,相同ZK路径的表可以相互复制 3 复制表本身拥 ...
- 列式数据库~clickhouse 数据同步使用
一 简介:进一步了解clickhouse二 数据操 1 单机建表 create TABLE aaa ( id UInt32, uid UInt32, amount Float64, ...
- Hbase与Oracle比较(列式数据库与行式数据库)
Hbase与Oracle比较(列式数据库与行式数据库) 1 主要区别 Hbase适合大量插入同时又有读的情况 Hbase的瓶颈是硬盘传输速度,Oracle的瓶颈是硬盘寻道时间. Hbase本质上只 ...
- Hadoop HBase概念学习系列之HBase里的列式数据库(十七)
列式数据库,从数据存储方式上有别于行式数据库,所有数据按列存取. 行式数据库在做一些列分析时,必须将所有列的信息全部读取出来 而列式数据库由于其是按列存取,因此只需在特定列做I/O即可完成查询与分析, ...
随机推荐
- ansible系列4-关闭ssh首次连接时提示
在ansible配置文件中找到 /etc/ansible/ansible.cfg 方法1 在配置文件中找到 了解到问题原因为,我们了解到进行ssh连接时,可以使用-o参数将StrictHostKeyC ...
- BZOJ2159 Crash的文明世界(树形dp+斯特林数)
根据组合意义,有nk=ΣC(n,i)*i!*S(k,i) (i=0~k),即将k个有标号球放进n个有标号盒子的方案数=在n个盒子中选i个将k个有标号球放入并且每个盒子至少有一个球. 回到本题,可以令f ...
- 关于js特效轮播图练习
[出现问题] js轮播图,图片未正常轮播. [解决方法] 通过对代码的检查,发现是以下三个原因造成的错误. 1.js代码问题 js代码使用alert(test);,测试修改完毕后,发现依然没有解决错误 ...
- 04 Zabbix4.0系统配置触发器trigger
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 04 Zabbix4.0系统配置触发器trigger 请点击查看Zabbix3.0.8版本trig ...
- 12 Zabbix Item类型之Zabbix JMX类型
点击返回:自学Zabbix之路 12 Zabbix Item类型之Zabbix JMX类型 JMX 全称是Java Management Extensions,即Java管理扩展.Java程序会开放一 ...
- [转载]Best Practices for Speeding Up Your Web Site
原文:http://developer.yahoo.com/performance/rules.html 提升网站加载速度的一些优化技巧,大部分在前端层面. 不知道是多久以前写的,看起来有些已经过时了 ...
- LOJ#2320 生成树计数
解:讲一个别的题解里我比较难以理解的地方,就是为什么可以把这两个东西合起来看成某一个连通块指数是2m而别的指数都是m. 其实很好理解,但是别人都略过了......把后面的∑提到∏的前面,然后展开,也可 ...
- windows & gcc & mingw & mysy 编译 openssl
今天有一个项目需要使用到 https, 以前一直用的都是http请求, 用 socket() 实现 https 请求我还真是头一回遇到. 先网上搜索了一下相关资料,明白了 https 相比较 http ...
- java NIO 直接与非直接缓冲区
ByteBuffer有两个创建缓冲区的方法:static ByteBuffer allocate(int capacity)static ByteBuffer allocateDirect(int c ...
- Python基础学习(五)
一.使用模块 已经了解了什么是模块,模块就是一个个文件的体,我们可以做不同的文件中引入各个模块文件,当然如果模块有冲突,还可以给模块文件的上层建立一个目录简称包,包名只能唯一,不能重名. 另外,一旦建 ...