.Net轻松处理亿级数据--clickhouse及可视化界面安装介绍

该篇内容由我的博客点击跳转同步更新!转载请注明出处!html

前言
我是在17年就据说过Clickhouse,那时还未接触过亿数据的运算,那时我在的小公司对于千万数据的解决方案还停留在分库分表,最好的也是使用mycat作的集群。这些解决方案都比较复杂,毕竟一般来讲那些须要大量存储的数据基本都是像日志,流水等不须要修改的数据,像客户人员等须要常常维护的信息通常项目也就几万左右,在这些不是很是重要的数据上耗太多时间我我的是以为有点浪费(但毕竟仍是要的嘛),直到我到了新公司才从新拾起了对Clickhouse的学习,下面主要介绍下安装以及下篇会介绍一些简单的用法。
1、ClickHouse简介 文档地址mysql

CH是由俄罗斯“熊哥”开源的一套用于联机分析(OLAP)的列式数据库管理系统(DBMS),它经过针对性的设计,力图解决海量多维度数据的查询性能问题。小白程序员轻松上手,安装和操做就像mysql同样简单。linux

适用于:
  1. 大多数是读请求
  2. 每次写入大于1000行的数据(不适用于单条插入)
  3. 不修改已添加的数据
  4. 每次查询都从数据库中读取大量的行,可是同时又仅须要少许的列
  5. 宽表,即每一个表包含着大量的列
  6. 较少的查询(一般每台服务器每秒数百个查询或更少)
  7. 对于简单查询,容许延迟大约50毫秒
  8. 列中的数据相对较小: 数字和短字符串(例如,每一个URL 60个字节)
  9. 处理单个查询时须要高吞吐量(每一个服务器每秒高达数十亿行)
  10. 事务不是必须的
  11. 对数据一致性要求低
  12. 每个查询除了一个大表外都很小
  13. 查询结果明显小于源数据,换句话说,数据被过滤或聚合后可以被盛放在单台服务器的内存中nginx

    应用场景

    公交轨迹(我本身的应用场景
    消费转帐流水
    日志记录
    天气数据
    ......git

2、ClickHouse安装程序员

安装方式有多种(暂未支持windows上安装),官方文档上介绍的安装方式感受有点复杂,下面介绍一种较为简单的安装方式,经过rpm安装包进行安装,git地址:点击跳转
系统环境:CentOS 7.5
一、下载包须要curl支持,当前系统没有的话须要先经过yum安装一下github

sudo yum install -y curl

二、下载安装脚本web

curl -s https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh | sudo bash

三、检查clickhouse安装包全不全sql

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

四、检查没问题的话开始安装服务端和客户端数据库

sudo yum install -y clickhouse-server clickhouse-client

五、检查安装后的包全不全

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

六、安装成功后首先运行服务端,默认会使用config.xml做为配置文件,也能够经过--config=xxx来指定配置文件

sudo service clickhouse-server start

七、客户端运行,这里的命令啥的和mysql很像,一些命令语法都是差很少的,下面简单试下

clickhouse-client

localhost :) 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.

:)

3、可视化界面安装,官方文档有介绍不少种工具,这里介绍Tabix

上面介绍的操做方式都是在linux上进行操做的,结果什么都须要经过终端进行查看,很不方便,好在有第三方可视化Web界面工具Tabix
操做界面
Tabix使用安装很是方便,有本地安装和无安装两种方式
一、无安装方式最简单,直接打开官方提供的地址:点击跳转
登陆
在上面输入你Clickhouse运行的地址、端口、登陆名、密码等信息就行了。
二、本地安装方式
本地须要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对应的目录下,而后浏览运行看下效果,具体登陆操做和上面同样。

4、扩充

集群的安装可参考这篇文章:点击跳转
使用Prometheus进行系统的监控
使用Grafana监控数据库的性能

下一篇将介绍数据操做的一些类库

微信关注我哦!(转载注明出处)关注我哦

相关文章
相关标签/搜索