列式数据库~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即可完成查询与分析, ...
随机推荐
- BZOJ3123[Sdoi2013]森林——主席树+LCA+启发式合并
题目描述 输入 第一行包含一个正整数testcase,表示当前测试数据的测试点编号.保证1≤testcase≤20. 第二行包含三个整数N,M,T,分别表示节点数.初始边数.操作数.第三行包含N个非负 ...
- Sublime Text3配置及控制台乱码[cmd杀死进程乱码/编译文件乱码]解决方法
[NodeJs] 1.安装 http://nodejs.cn/download/ 2.安装过程省略(因为已经安装过了) 和平时安装软件没区别 3.配置环境 计算机--->属性-->高级系统 ...
- 【BZOJ2000】[HNOI2000]取石头游戏(贪心,博弈论)
[BZOJ2000][HNOI2000]取石头游戏(贪心,博弈论) 题面 BZOJ 洛谷 题解 这题好神仙啊,窝不会QaQ. 假装一下只有三个元素\(a_{i-1},a_i,a_{i+1}\),并且满 ...
- Sublime Text3—Project(项目管理)
摘要 Project 可以理解为项目.工程或者站点,以下称项目.使用项目管理的好处是:不用将所有文件都放到同一个根目录,可以将相关但不同路径的文件组成一个Project,每个项目都是独立的,文件的状态 ...
- maven install deploy tell us heap is full
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compi ...
- 关闭应用程序(主程序)(WPF)
很多人认为关闭应用程序应该很简单,例如WindowsForm里一个Application.Exit();方法就可以解决问题,但在WPF里面可别滥用,因为WPF里Application类没有该方法,倒是 ...
- Django多域名配置之Django-hosts插件的使用
使用场景: Django中有两个app,如果通过域名来访问,可以使用www.domain.com/a.www.domain.com/b来访问.这样就显得有点LowB了.如果我想通过a.domain.c ...
- go 基础(二)
strings和strconv使用 1.strings使用 strings.HasPrefix(s string, prefix string) bool:判断字符串s是否以prefix开头. str ...
- Scala进阶之路-Scala中的Ordered--Ordering
Scala进阶之路-Scala中的Ordered--Ordering 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 说道对象的比较,在Java中大家最熟悉不过的就是实现类本身实 ...
- Linux命令之如何从普通用户切换至管理员用户
普通用户,标志是一个$符号 管理员用户,标志是一个#符号 我要切换,敲打命令 sudo su - 然后输入你的管理员用户的密码(输入密码的时候是不可见的) 然后你就切换到#状态了.