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,或者重启系统。

相关推荐
copilot中国版20 分钟前
从关账到报表,Copilot 帮财务搭建标准化管理体系
大数据
T062051422 分钟前
【数据集】地级市市场分割指数和市场一体化指数数据(2001-2024年)
大数据
FPGA信号处理1 小时前
【电磁大数据理论与算法】第四课:电磁感知
大数据
问商十三载11 小时前
AI引擎生成式优化实践:刑事辩护律师团队IP构建
大数据·人工智能
会议咨询12 小时前
2026年大数据、信息系统与智能通信国际会议(BDIIC 2026)
大数据·信息系统·智能通信
Raas10012 小时前
MAI Gateway(魔芋企业级AI网关)能力解析:AI网关能做故障转移吗?AI网关核心功能详解
大数据·人工智能·网关·ai·gateway·mai gateway
IT研究所13 小时前
AI-ITR平台如何减少客户问题反复升级?
大数据·运维·人工智能·低代码·自然语言处理·安全架构·企微
回眸&啤酒鸭14 小时前
【回眸】OpenSwarm 多智能体协作系统实战指南
大数据·前端·人工智能
大大大大晴天14 小时前
每天认识一个组件:Apache DolphinScheduler
大数据
yumgpkpm15 小时前
Acceldata ODP(Open Data Platform)3.3.6.4(RHEL9)保姆级完整安装手册
大数据·人工智能·hive·hadoop·kafka·hbase·cloudera