.Net轻松处理亿级数据--clickhouse及可视化界面安装介绍
前言
我是在17年就听说过Clickhouse,那时还未接触过亿数据的运算,那时我在的小公司对于千万数据的解决方案还停留在分库分表,最好的也是使用mycat做的集群。这些解决方案都比较复杂,毕竟通常来说那些需要大量存储的数据基本都是像日志,流水等不需要修改的数据,像客户人员等需要经常维护的信息一般项目也就几万左右,在这些不是非常重要的数据上耗太多时间我个人是觉得有点浪费(但毕竟还是要的嘛),直到我到了新公司才重新拾起了对Clickhouse的学习,下面主要介绍下安装以及下篇会介绍一些简单的用法。
一、ClickHouse简介 文档地址
CH是由俄罗斯“熊哥”开源的一套用于联机分析(OLAP)的列式数据库管理系统(DBMS),它通过针对性的设计,力图解决海量多维度数据的查询性能问题。小白程序员轻松上手,安装和操作就像mysql一样简单。
适用于:
大多数是读请求
每次写入大于1000行的数据(不适用于单条插入)
不修改已添加的数据
每次查询都从数据库中读取大量的行,但是同时又仅需要少量的列
宽表,即每个表包含着大量的列
较少的查询(通常每台服务器每秒数百个查询或更少)
对于简单查询,允许延迟大约50毫秒
列中的数据相对较小: 数字和短字符串(例如,每个URL 60个字节)
处理单个查询时需要高吞吐量(每个服务器每秒高达数十亿行)
事务不是必须的
对数据一致性要求低
每一个查询除了一个大表外都很小
查询结果明显小于源数据,换句话说,数据被过滤或聚合后能够被盛放在单台服务器的内存中
应用场景
公交轨迹(我自己的应用场景)
消费转账流水
日志记录
天气数据
......
二、ClickHouse安装
安装方式有多种(暂未支持windows上安装),官方文档上介绍的安装方式感觉有点复杂,下面介绍一种较为简单的安装方式,通过rpm安装包进行安装,git地址:点击跳转
系统环境:CentOS 7.5
1、下载包需要curl支持,当前系统没有的话需要先通过yum安装一下
sudo yum install -y curl
2、下载安装脚本
curl -s https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh | sudo bash
3、检查clickhouse安装包全不全
sudo yum list 'clickhouse*'Available Packages
clickhouse-client.x86_64 18.1.0-1.el7 Altinity_clickhouse
clickhouse-common-static.x86_64 18.1.0-1.el7 Altinity_clickhouse
clickhouse-compressor.x86_64 1.1.54336-3.el7 Altinity_clickhouse
clickhouse-debuginfo.x86_64 18.1.0-1.el7 Altinity_clickhouse
clickhouse-mysql.noarch 0.0.20180319-1 Altinity_clickhouse
clickhouse-server.x86_64 18.1.0-1.el7 Altinity_clickhouse
clickhouse-server-common.x86_64 18.1.0-1.el7 Altinity_clickhouse
clickhouse-test.x86_64 18.1.0-1.el7 Altinity_clickhouse
4、检查没问题的话开始安装服务端和客户端
sudo yum install -y clickhouse-server clickhouse-client
5、检查安装后的包全不全
sudo yum list installed 'clickhouse*'Installed Packages
clickhouse-client.x86_64 18.1.0-1.el7 @Altinity_clickhouse
clickhouse-common-static.x86_64 18.1.0-1.el7 @Altinity_clickhouse
clickhouse-server.x86_64 18.1.0-1.el7 @Altinity_clickhouse
clickhouse-server-common.x86_64 18.1.0-1.el7 @Altinity_clickhouse
6、安装成功后首先运行服务端,默认会使用config.xml作为配置文件,也可以通过--config=xxx来指定配置文件
sudo service clickhouse-server start
7、客户端运行,这里的命令啥的和mysql很像,一些命令语法都是差不多的,下面简单试下
clickhouse-clientlocalhost :) show databases
SHOW DATABASES
┌─name────┐
│ default │
│ system │
└─────────┘2 rows in set. Elapsed: 0.030 sec.
这时服务端会有响应信息
ClickHouse client version 18.1.0.
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 18.1.54396.:)
三、可视化界面安装,官方文档有介绍很多种工具,这里介绍Tabix
上面介绍的操作方式都是在linux上进行操作的,结果什么都需要通过终端进行查看,很不方便,好在有第三方可视化Web界面工具Tabix
Tabix使用安装非常方便,有本地安装和无安装两种方式
1、无安装方式最简单,直接打开官方提供的地址:点击跳转
在上面输入你Clickhouse运行的地址、端口、登录名、密码等信息就好了。
2、本地安装方式
本地需要web服务器,所以先安装一个nginx,具体安装不再细说,网上资料有很多,nginx配置
server {listen 80;server_name ui.tabix.io;charset utf-8;root /var/www/tabix.ui/build;location / {if (!-f $request_filename) {rewrite ^(.*)$ /index.html last;}index index.html index.htm;}
}
然后下载最新的安装文件:点击跳转,并且解压将build文件夹拷贝到nginx对应的目录下,然后浏览运行看下效果,具体登录操作和上面一样。
四、扩充
集群的安装可参考这篇文章:点击跳转
使用Prometheus进行系统的监控
使用Grafana监控数据库的性能
.Net轻松处理亿级数据--clickhouse及可视化界面安装介绍相关推荐
- 超实用的mysql分库分表策略,轻松解决亿级数据问题
超实用的mysql分库分表策略,轻松解决亿级数据问题 参考文章: (1)超实用的mysql分库分表策略,轻松解决亿级数据问题 (2)https://www.cnblogs.com/xichji/p/1 ...
- clickhouse语句_篇四|ClickHouse的可视化界面与集群状态监控
介绍 tabix支持通过浏览器直接连接 ClickHouse,不需要安装其他软件,就可以访问ClickHouse,具有以下特点: ⾼亮语法的编辑器. ⾃动命令补全. 查询命令执⾏的图形分析⼯具. 配⾊ ...
- mysql多字段分库分表基因码_mysql数据库优化方案之分库分表,轻松解决亿级数据问题...
今天介绍下sharding-sphere,主要介绍他的特性,分库分表的技术的详解. (一)下载源码官网地址获取源码https://shardingsphere.apache.org/index_zh. ...
- 京东物流基于Doris的亿级数据自助探索应用
导读:京东智慧物流在数据应用方面,主要是基于大数据预测分析技术实现智能化的调度.决策,提升物流效率,最终提升客户的体验.但面对亿级数据的业务场景,将会面临着不同的问题和不同的处理方案.今天讨论了京东物 ...
- 基于Ganos百行代码实现亿级矢量空间数据在线可视化
简介: 本文介绍如何使用RDS PG或PolarDB(兼容PG版或Oracle版)的Ganos时空引擎提供的数据库快显技术,仅用百行代码实现亿级海量几何空间数据的在线快速显示和流畅地图交互,且无需关注 ...
- 唯品会翻牌ClickHouse后,实现百亿级数据自助分析
本文根据王玉老师在[deeplus直播第266期]线上分享演讲内容整理而成.(文末有获取本期PPT&回放的方式,不要错过) 王玉 唯品会实时平台OLAP团队负责人 负责唯品会Presto.Cl ...
- MySQL 亿级数据的迁移、清洗、与审计分析
职业生涯中,曾经有两年多时间从事IT内部审计的工作,需要介入公司大部分的业务系统,主要的数据库为 MySQL,特别是三年期审计,需要统计三年的数据素材(亿级以上).对MySQL的性能有一些自已的理解, ...
- 10亿级数据规模的半监督图像分类模型,Imagenet测试精度高达81.2% | 技术头条...
译者 | linstancy 作者| I. Zeki Yanlniz, Herve Jegou, Kan Chen, Manohar Paluri, Dhruv Mahajan 编辑 | 蓝色琥珀鱼, ...
- DockOne微信分享( 九十一):打造百亿级数据处理量的弹性调度容器平台
本文讲的是DockOne微信分享( 九十一):打造百亿级数据处理量的弹性调度容器平台[编者的话]本次分享介绍七牛数据处理团队的容器技术实践经验,分享七牛如何通过自主研发的容器调度框架打造易扩展.易部署 ...
最新文章
- java中数组的复制
- POJ 1552 Doubles (C++ STL set使用)
- wikioi 3027 线段覆盖 2
- 化浆池是什么东西_头次见聪明人在阳台上砌洗衣池,开始被人笑话,装完都跟着学...
- [翻译]Protocol Buffer 基础: C++
- YbtOJ#943-平方约数【莫比乌斯反演,平衡规划】
- SparkSQL 内置函数的使用(JAVA与Scala版本)
- Django项目搭建(基础)
- php+mysql多事务处理_php+mysql事务处理
- print python 带回车_python标准库threading源码解读【二】
- 启动、停止、重启 MySQL 常见的操作方法:
- QQ头像加口罩PHP,如何用人脸识别自动给头像添加口罩及护目镜
- 系泊系统悬链线matlab,系泊系统的设计.docx
- python3网络爬虫-介绍
- NOI Online #2入门组
- shell脚本清理网宿cdn缓存
- 逆向,真是一件苦差事
- Robbers' watch【Codeforces 686 C】【DFS】
- 利用TPTP对Java程序进行性能测试
- MySQL在Windows和Linux平台上多版本多实例安装配置方法(5.5、5.6、5.7、8.0)