Clickhouse 笔记(一) 单机版安装并将clickhouse-server定义成服务

ClickHouse 是一个高性能的列式数据库管理系统(DBMS),主要用于在线分析处理(OLAP)场景。它由俄罗斯搜索引擎公司 Yandex 开发,并在 2016 年开源。ClickHouse 以其卓越的查询性能和灵活的扩展性而闻名,特别适合处理大量数据,并提供了一系列强大的函数来帮助用户编写分析查询。

ClickHouse 的核心优势包括:

  • 高速查询性能:ClickHouse 通过列式存储和向量化查询引擎,实现了极高的查询性能,能够轻松应对海量数据的实时分析需求
  • 灵活的扩展性:支持分布式部署,可以轻松实现水平扩展,满足不断增长的数据存储和查询需求
  • 丰富的功能特性:提供了丰富的数据类型和函数库,支持复杂的数据分析和挖掘操作,满足多样化的业务需求
  • 数据压缩:ClickHouse 在存储数据时会进行压缩,减少了磁盘空间的占用,同时由于数据在内存中以压缩形式存在,读取和处理时的解压操作也能被硬件加速,进一步提高了查询性能
  • 并行处理:在处理复杂查询时,ClickHouse 可以将任务分解为多个子任务并行执行,利用多核 CPU 的能力,加快处理速度
  • 实时数据处理:ClickHouse 支持对数据的实时插入和查询,可以实现对实时数据的分析与监控

    ClickHouse 的应用场景包括:
  • 大数据处理和分析:ClickHouse 可以处理大规模数据集,并提供高效的数据分析和查询功能,适用于需要处理海量数据的应用场景,如互联网、金融、电信等领域
  • 数据仓库:可以作为数据仓库的存储和分析引擎,提供高效的数据查询和报表生成功能,适用于需要对大量数据进行集中存储、管理和分析的场景,如企业数据仓库、金融数据仓库等
  • 数据湖:ClickHouse 可以处理非结构化数据和半结构化数据,适用于数据湖的存储和分析场景,如大规模社交媒体数据、物联网数据等
  • 实时计算平台:提供了实时数据处理和计算功能,可以支持实时数据流处理和实时决策,适用于需要对实时数据进行分析和处理的场景,如实时金融交易、实时广告投放等

    ClickHouse 适用于需要处理大规模数据、实现高效数据分析和决策的场景,可以作为各种数据存储和分析应用的引擎,为业务提供高效的数据支持和洞察

Clickhouse官网地址https://clickhouse.com/,大家可以从官网获得更多更有用的权威信息,对于你的排错和调优都有很大的帮助,所以大家在学习新的技能时一定多关注他们的官方网站。

一、安装

curl https://clickhouse.com/ | sh
sudo ./clickhouse install

在这里插入图片描述
默认安装的clickhouse配置文件目录/etc/clickhouse-server

在这里插入图片描述

二、启动clickhouse

sudo -u alfiy clickhouse server

在这里插入图片描述
上图是clickhouse启动后的截图。

三、登录clickhouse

使用cli登录clickhouse

clickhouse client

在这里插入图片描述
使用命令行登录后就可以操作clickhouse了,和操作mysql非常相似,使用quit命令退出登录。

四、设置clickhouse-server服务

为了方便以后的操作,可以将clickhouse-server设置成服务。

新建 /lib/systemd/system/clickhouse-server.service文件,添加以下内容。

[Unit]
Description=ClickHouse Server (analytic DBMS for big data)
Requires=network-online.target
# NOTE: that After/Wants=time-sync.target is not enough, you need to ensure
# that the time was adjusted already, if you use systemd-timesyncd you are
# safe, but if you use ntp or some other daemon, you should configure it
# additionaly.
After=time-sync.target network-online.target
Wants=time-sync.target[Service]
Type=notify# NOTE: we leave clickhouse watchdog process enabled to be able to see OOM/SIGKILL traces in clickhouse-server.log files.
# If you wish to disable the watchdog and rely on systemd logs just add "Environment=CLICKHOUSE_WATCHDOG_ENABLE=0" line.
User=clickhouse
Group=clickhouse
Restart=always
RestartSec=30
# The following ClickHouse directives should be used instead of forcing SIGKILL by systemd:
# - shutdown_wait_unfinished_queries
# - shutdown_wait_unfinished
TimeoutStopSec=infinity
# Disable forwarding signals by watchdog, since with default systemd's
# kill-mode control-group, systemd will send signal to all process in cgroup.
Environment=CLICKHOUSE_WATCHDOG_NO_FORWARD=1
# Since ClickHouse is systemd aware default 1m30sec may not be enough
TimeoutStartSec=0
# %p is resolved to the systemd unit name
RuntimeDirectory=%p
ExecStart=/usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=%t/%p/%p.pid
# Minus means that this file is optional.
EnvironmentFile=-/etc/default/%p
# Bring back /etc/default/clickhouse for backward compatibility
EnvironmentFile=-/etc/default/clickhouse
LimitCORE=infinity
LimitNOFILE=500000
CapabilityBoundingSet=CAP_NET_ADMIN CAP_IPC_LOCK CAP_SYS_NICE CAP_NET_BIND_SERVICE
AmbientCapabilities=CAP_NET_ADMIN CAP_IPC_LOCK CAP_SYS_NICE CAP_NET_BIND_SERVICE[Install]
# ClickHouse should not start from the rescue shell (rescue.target).
WantedBy=multi-user.target

🖊 注意[Service]单元中 ExecStart=应当对应你安装的clickhouse的目录。

👿 新增服务配置文件之后,需要使用命令systemctl daemon-reload让服务配置生效。

💁‍♂ 修改完成后,如果想使用systemctl控制clickhouse-server服务需要先通过命令clickhouse stop 停止clickhouse,或者重启系统。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/57745.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2-133 基于matlab的粒子群算法PSO优化BP神经网络

基于matlab的粒子群算法PSO优化BP神经网络,BP神经网络算法采用梯度下降算法,以输出误差平方最小为目标,采用误差反向传播,训练网络节点权值和偏置值,得到训练模型。BP神经网络的结构(层数、每层节点个数)较复杂时&…

【linux网络编程】| 网络基础 | 解析IP与Mac地址的区别

前言:本节内容讲解一些网络基础相关的知识点, 不涉及网络代码!同样的本节内容是作为前一篇的补充知识点, 前一篇文章地址:【linux网络编程】 | 网络基础Ⅰ| 认识网络-CSDN博客,本篇文章内容较少&#xff0c…

AnaTraf | 全面掌握网络健康状态:全流量的分布式网络性能监测系统

AnaTraf 网络性能监控系统NPM | 全流量回溯分析 | 网络故障排除工具AnaTraf网络流量分析仪是一款基于全流量,能够实时监控网络流量和历史流量回溯分析的网络性能监控与诊断系统(NPMD)。通过对网络各个关键节点的监测,收集网络性能…

内置数据类型、变量名、字符串、数字及其运算、数字的处理、类型转换

内置数据类型 python中的内置数据类型包括:整数、浮点数、布尔类型(以大写字母开头)、字符串 变量名 命名变量要见名知意,确保变量名称具有描述性和意义,这样可以使得代码更容易维护,使用_可以使得变量名…

2024.7最新子比主题zibll7.9.2开心版源码+授权教程

授权教程: 1.进入宝塔搭建一个站点 绑定 api.zibll.com 域名 并上传 index.php 文件 2.设置伪静态 3.开启SSL证书,找一个能用的域名证书,将密钥(KEY)和证书(PEM格式)复制进去即可 4.在宝塔文件地址栏中输入 /etc 找到 hosts文件并打开&a…

[Linux][进程间通信] 命名管道

命名管道是一种进程间通信的方式,底层原理与匿名管道极为相似,本质是通过在磁盘上新建一个特殊的文件,然后通过这个文件来进行通信 指令: mkfifo [文件名/路径] 该指令用于创建一个命名管道,可以看到文件的类型是p p 类型 命名管道文件 p文件大小恒为0 可通过echo和cat向其…

JavaEE----多线程(四)----阻塞队列的介绍和初步实现

文章目录 1.阻塞队列1.1作用一:解耦合1.2作用二:削峰填谷1.3系统里面的阻塞队列的使用1.4实现普通队列1.5在普通队列的基础上面实现阻塞队列1.6设计优化1.7实现初步的生产者消费者模型 1.阻塞队列 阻塞队列的最大意义:就是实现“生产者消费者…

SQL 干货 | SQL 半连接

大多数数据库开发人员和管理员都熟悉标准的内、外、左和右连接类型。虽然可以使用 ANSI SQL 编写这些连接类型,但还有一些连接类型是基于关系代数运算符的,在 SQL 中没有语法表示。今天我们将学习一种这样的连接类型:半连接(Semi …

后台管理员登录实现--系统篇

我的小系统后台原来就有一个上传图片的功能还夹带个删除图片的功能,还嵌到了一个菜单里面。之前效果如下 那么现在为了加大安全力度,想增加一个登录页面。通过登录再到这个页面。看着貌似很简单,但是听我细细说来,要新增些什么东西…

C#第四讲:C#语言基本元素概览,初识类型、变量与方法,算法简介

一、构成C#语言的基本元素 1、标识符 允许将下划线用作初始字符(这是C编程语言的传统)。 允许在标识符中使用 Unicode 转义序列,以及允许“”字符作为前缀以使关键字能够用作标识符。 (1)命名方法 变量名:用驼峰法。&#xff…

【SQL实验】表的更新和简单查询

完整代码在文章末尾 在上次实验创建的educ数据库基础上,用SQL语句为student表、course表和sc表中添加以下记录 【SQL实验】数据库、表、模式的SQL语句操作_创建一个名为educ数据库,要求如下: (下面三个表中属性的数据类型需要自己设计合适-CSDN博客在这篇博文中已经…

安全见闻---清风

注:本文章源于泷羽SEC,如有侵权请联系我,违规必删 学习请认准泷羽SEC学习视频:https://space.bilibili.com/350329294 安全见闻1 泷哥语录:安全领域什么都有,不要被表象所迷惑,无论技术也好还是其他方面…

[jeecg-boot] vue3 版本 nvm 下载node版本

安装pnpm 使用cnpm 进行下载依赖

JavaWeb 23.一文速通npm的配置和使用

目录 一、npm的介绍 二、npm的安装和配置 1.安装 : 2.配置依赖下载使用阿里镜像 3. 配置全局依赖下载后存储位置 4.升级npm版本 5.环境变量配置 三、npm常用命令 1.项目初始化 npm.init npm init -y 2.安装依赖文件 3. 升级依赖 4.卸载依赖 5.查看依赖 查看项目…

深入浅出 Vue3 nextTick

程序员节日快乐~ #1024程序员节 | 征文# nextTick 概念 当你在 Vue 的响应式数据模型中对数据进行修改时,这些变化并不会立即同步到 DOM 上_,而是会在当前的微任务队列(microtask queue)执行完毕后进行批量更新。这种机制被称为…

内网穿透:如何借助Cloudflare连接没有公网的电脑的远程桌面(RDP)

内网穿透:如何借助Cloudflare连接没有公网的电脑的远程桌面(RDP)-含详细原理配置说明介绍 前言 远程桌面协议(RDP, Remote Desktop Protocol)可用于远程桌面连接,Windows系统(家庭版除外)也是支持这种协议的,无需安装…

使用 NumPy 和 Matplotlib 实现交互式数据可视化

使用 NumPy 和 Matplotlib 实现交互式数据可视化 在数据分析中,交互式可视化可以更好地帮助我们探索和理解数据。虽然 Matplotlib 是静态绘图库,但结合一些技巧和 Matplotlib 的交互功能(widgets、event handlers),我…

水轮发电机油压自动化控制系统解决方案介绍

在现代水电工程中,水轮机组油压自动化控制系统,不仅直接关系到水轮发电机组的安全稳定运行,还影响着整个水电站的生产效率和经济效益。 一、系统概述 国科JSF油压自动控制系统,适用于水轮发电机组调速器油压及主阀(蝶…

Dongle Sentinal在Jenkins下访问不了的问题

背景: 工作站部署的jenkins的脚本无法正常打包,定位后发现是本地获取不了license,但是使用usb over network的远程license都能获取并正常打包 分析: 获取不了license的原因是本地无法识别dongle。根据提供信息,之前…

SAP_SD模块-销售订单创建价格扩大10倍问题分析及后续订单价格批量更新问题处理

一、业务背景 我们公司的销售订单,是通过第三方销售管理平台创建好订单后,把表头和行项目数据,定时推送到SAP;SAP通过自定义表ZZT_ORDER_HEAD存放订单表头数据,通过ZZT_ORDER_DETAIL存放行项目数据;然后再用…