clickhouse集群安装
单机安装
- yum install yum-utils
- rpm --import https://repo.clickhouse.com/CLICKHOUSE-KEY.GPG
- yum-config-manager --add-repo https://repo.clickhouse.com/rpm/clickhouse.repo
- sudo yum install clickhouse-server clickhouse-client
配置文件
vim /etc/clickhouse-server/config.xml
<remote_servers><clickhouse_3shards_1replicas><shard><internal_replication>true</internal_replication><replica><host>10.0.5.153</host><port>9000</port></replica></shard><shard><replica><internal_replication>true</internal_replication><host>10.0.5.154</host><port>9000</port></replica></shard><shard><internal_replication>true</internal_replication><replica><host>10.0.5.155</host><port>9001</port></replica></shard></clickhouse_3shards_1replicas></remote_servers><zookeeper><node><host>10.0.5.37</host><port>2181</port></node><node><host>10.0.5.37</host><port>2182</port></node><node><host>10.0.5.37</host><port>2183</port></node>
</zookeeper><macros><shard>01</shard><replica>10.0.5.153</replica>
</macros><macros><shard>02</shard><replica>10.0.5.154</replica>
</macros><macros><shard>03</shard><replica>10.0.5.155</replica>
</macros>
使用scp命令将配置文件传到两外两台机器上:
scp /etc/clickhouse-server/config.xml root@10.0.5.153:/etc/clickhouse-server/config.xml
scp /etc/clickhouse-server/config.xml root@10.0.5.154:/etc/clickhouse-server/config.xml
clickhouse安装位置
- 配置文件: /etc/clickhouse-server/config.xml
- data存储: /var/lib/clickhouse/
开启zk集群
这个参考我之前发布的下载资源,windows下直接使用cmd即可打开zk集群服务。
启动Server(有点坑)
- 指明配置文件的情况下,如果是root账号,要使用 sudo -u clickhouse /usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml,否则就提示 Application: DB::Exception: Effective user of the process (root) does not match the owner of the data (clickhouse). Run under ‘sudo -u clickhouse’。一旦你首次用root账号指定配置文件启动的,启动错了,那么再用systemctl就无法启动了。
需要修改文件组:
- chgrp clickhouse clickhouse -R
- chgrp clickhouse /var/lib/clickhouse -R
- chown clickhouse /var/lib/clickhouse -R
- chown clickhouse /var/log/clickhouse-server -R
- chgrp clickhouse /var/log/clickhouse-server -R
客户端连接
# -m是多行模式,分号+回车执行当前语句。
clickhouse-client --port=xxx --host=xxx --user=xxx --password=xxx -m
查看集群是否搭建成功

基础SQL
-- 集群上创建数据库
create database a9_mixed on cluster clickhouse_3shards_1replicas;-- 在已有数据的表上创建分布式表,这里t_log_goods是机器上已经存在数据的表。
create table t_log_goods_all on cluster clickhouse_3shards_1replicas [as a9_mixed.t_log_goods] engine = Distributed(clickhouse_3shards_1replicas,a9_mixed,t_log_goods);-- show create table 的语句为:
CREATE TABLE a9_mixed.t_log_goods_all
(`val` Int32,`new` Int32,`flag` Int32,`rname` String,`optime` Int32,`level` Int32,`goodsid` Int32,`old` Int32,`rid` Int64,`platform` Int32,`sid` Int32,`quality` Int32,`uid` Int32,`guid` Int64,`id` Int32,`sdk` String,`power` Int64,`seri` Int32,`goodstype` Int32
)
ENGINE = Distributed('clickhouse_3shards_1replicas', 'a9_mixed', 't_log_goods');
-- 重新在机器上执行 这样子只会在执行sql的机器上新建名字为t_log_goods_all的表,其他机器并不会新建表。-- 删除分布式表
drop table t_log_goods_all on cluster clickhouse_3shards_1replicas;-- 新建本地表,然后对应一张分布式表
CREATE TABLE t_local on cluster clickhouse_3shards_1replicas
(EventDate DateTime,CounterID UInt32,UserID UInt32
) ENGINE MergeTree() PARTITION BY toYYYYMM(EventDate) ORDER BY (CounterID, EventDate);-- 对应的分布式表
CREATE TABLE t_logical_Distributed on cluster clickhouse_3shards_1replicas
(EventDate DateTime,CounterID UInt32,UserID UInt32
)
ENGINE = Distributed(clickhouse_3shards_1replicas, test01, t_local, CounterID) ;-- 向分布式表中写入数据,分布式表最终也是把数据分散写入对应的分片。
INSERT INTO t_logical_Distributed VALUES ('2021-01-16 00:00:00', 5, 5),('2021-02-10 00:00:00',6, 6),('2021-03-10 00:00:00',4, 4);
相关文章:
clickhouse集群安装
单机安装 yum install yum-utilsrpm --import https://repo.clickhouse.com/CLICKHOUSE-KEY.GPGyum-config-manager --add-repo https://repo.clickhouse.com/rpm/clickhouse.reposudo yum install clickhouse-server clickhouse-client 配置文件 vim /etc/clickhouse-serve…...
Zookeeper入门
Zookeeper入门概述特点结构应用场景选举机制节点信息监听原理写数据原理分布式锁概述 Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。 Zookeeper 从设计模式的角度来开:是一个基于观察者模式设计的分布式服务管理框架…...
JavaScript
BOM核心对象docunmentBOM核心对象windowBOM包含着DOMF12即可打开浏览器控制台navigator(浏览器版本)、history(浏览器历史记录),location(地址信息)、screen(屏幕相关)JS输出形式:浏览器输出:wi…...
.gitignore 常用忽略规则
.gitignore常用忽略语法 1、空格不匹配任意文件,可作为分隔符,可用反斜杠转义 2、以井号#开头的文件标识注释,可以使用反斜杠进行转义 3、以斜杠/开头表示目录 4、以星号*通配多个字符 5、以问号?通配单个字符 6、以方括号[]包含单个字符的…...
Vue路由 —— vue-router
在上一篇内容讲到关于单页面组件的内容,同时也附上补充讲了关于单页面(SPA)和多页面(MPA)之间的优缺点,在本篇目当中就要来讲这个路由(vue-router),通过路由来实现页面的…...
Java Jackson TypeReference获取泛型类型信息【泛型】
Jackson是一个比较流行的Json序列化和反序列化框架。本文以Jackson为例介绍TypeReference实现涉及泛型的反序列化,及TyperReference的实现原理。对于获取泛型类型信息的场景,TypeReference是一个可以参考的通用解决方案。 Jackson ObjectMapper的readVa…...
Python 核心笔记(二)
特殊规则及特殊字符:#号(#) : 注释换行(\n) : 换行反斜线(\) : 继续上一行分号(;) : 两个语句连在一行冒号(:) : 将代码块的头和体分开不同的缩进…...
Hadoop集群搭建
文章目录一、运行环境配置(所有节点)1、基础配置2、配置Host二、依赖软件安装(101节点)1、安装JDK2、安装Hadoop(root)3、Hadoop目录结构三、本地运行模式(官方WordCount)1、简介2、本地运行模式(官方WordCount)四、完全分布式运行…...
每个前端都应该掌握的7个代码优化的小技巧
本文将介绍7种JavaScript的优化技巧,这些技巧可以帮助你更好的写出简洁优雅的代码。 1. 字符串的自动匹配(Array.includes) 在写代码时我们经常会遇到这样的需求,我们需要检查某个字符串是否是符合我们的规定的字符串之一。最常…...
金三银四丨黑蛋老师带你剖析-二进制漏洞
作者:黑蛋二进制漏洞岗上篇文章我们初步了解了一下简历投递方式以及二进制方向相关逆向岗位的要求,今天我们就来看看二进制漏洞相关的岗位,当然,漏洞岗位除了分不同平台,也有漏洞挖掘岗和漏洞分析利用岗。同样…...
pgsql-用户角色组角色创建和维护
pgsql-用户&角色&组角色创建和维护 环境 win10pgsql 14.2 相关文档 PostgreSQL 14.1 手册 create 语法 grant 授权语法 revoke 撤回语法 alter 更新语法 用户、角色、组角色概念和区别 早期版本(8.1之前)中用户、组、角色是不同的概念&#…...
算法与数据结构理解
目录1、数据结构与算法1.1 定义1.2 常见数据结构1.3 常用算法2、插入排序3、希尔排序4、归并排序1、数据结构与算法 1.1 定义 数据结构:是计算机中存储、组织数据的方式。具有一定逻辑关系,应用某种存储结构,并且封装了相应操作的数据元素集…...
常见的C++软件异常场景分析与总结
根据排查软件异常问题的经历和经验,简单的总结一下软件异常的场景和原因,以供参考。 1、野指针问题 可能是指针没初始化就使用。也有可能是指针指向的内存已经被释放,但是指针没置为NULL,一旦访问这样的指针就会出问题。在很多情…...
【虹科公告】好消息!云展厅开放时间长达1年,2023年不限次云观展
云展厅开放通知 2023年,【虹科赋能汽车智能化云展厅】将持续开放,开放时间长达一年,开放期内,均可进入观展,没有次数及观看时长限制,欢迎大家随时进入云展厅观展。 虹科赋能汽车智能化云展厅 聚焦前沿技…...
Linux破解root密码
✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Linux操作…...
2023年信息与通信工程国际会议(JCICE 2023)
2023年信息与通信工程国际会议(JCICE 2023) 重要信息 会议网址:www.jcice.org 会议时间:2023年3月17-19日 召开地点:成都 截稿时间:2023年2月10日 录用通知:投稿后2周内 收录检索:EI,Scopus 会议简介…...
ASP.NET Core+Element+SQL Server开发校园图书管理系统(完)
随着技术的进步,跨平台开发已经成为了标配,在此大背景下,ASP.NET Core也应运而生。本文主要基于ASP.NET CoreElementSql Server开发一个校园图书管理系统为例,简述基于MVC三层架构开发的常见知识点,本系列共五篇文章&a…...
elasticsearch 批量写入(Python版).md
1. 插入数据 现在我们如果有大量的文档(例如10000000万条文档)需要写入es 的某条索引中,该怎么办呢? 1.1 顺序插入 import time from elasticsearch import Elasticsearches Elasticsearch()def timer(func):def wrapper(*arg…...
【排序算法】快速排序(Quick Sort)
快速排序(Quick Sort)使用分治法算法思想。快速排序介绍它的基本思想是: 选择一个基准数,通过一趟排序将要排序的数据分割成独立的两部分;其中一部分的所有数据都比另外一部分的所有数据都要小。然后,再按此方法对这两部分数据分别进行快速排…...
SpringIOC之创建Bean的核心方法doGetBean
概述面向资源(XML、Properties)、面向注解定义的 Bean 是如何被解析成 BeanDefinition(Bean 的“前身”),并保存至 BeanDefinitionRegistry 注册中心里面,实际也是通过 ConcurrentHashMap 进行保存。Spring…...
超越传统RPA!用Magentic-UI实现人机协作式网页自动化(含工作流调试技巧)
超越传统RPA:Magentic-UI的人机协作革命与实战进阶 当传统RPA工具还在追求"全自动"的乌托邦时,微软开源的Magentic-UI已经开辟了一条更务实的道路——人机协同智能。这个基于多智能体架构的系统不是要取代人类,而是通过"可干预…...
计算机毕业设计springboot研友帮系统设计与实现 基于SpringBoot的考研互助社区平台开发与实现 SpringBoot框架下研究生学术协作系统的设计与应用
计算机毕业设计springboot研友帮系统设计与实现w2zpm5oh (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。 随着研究生招生规模的持续扩大,考研竞争日益激烈࿰…...
终极ViGEmBus虚拟手柄驱动:Windows游戏控制解决方案完全指南
终极ViGEmBus虚拟手柄驱动:Windows游戏控制解决方案完全指南 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus ViGEmBus是一款专业的Windows内核级…...
Umi-OCR批量文字识别终极指南:免费离线OCR工具快速上手
Umi-OCR批量文字识别终极指南:免费离线OCR工具快速上手 【免费下载链接】Umi-OCR Umi-OCR: 这是一个免费、开源、可批量处理的离线OCR软件,适用于Windows系统,支持截图OCR、批量OCR、二维码识别等功能。 项目地址: https://gitcode.com/Git…...
企业必看:致远OA密码重置漏洞修复指南(附官方补丁下载与安装教程)
致远OA密码重置漏洞全面修复指南:从补丁部署到安全加固 1. 漏洞背景与影响范围 近期致远OA协同办公平台曝出的密码重置漏洞,已成为企业IT安全团队亟需应对的高危风险。该漏洞允许攻击者在仅获取用户名的情况下,通过构造特定HTTP请求绕过短信…...
Alpamayo-R1-10B入门必看:VLA模型与传统端到端/模块化架构的本质差异
Alpamayo-R1-10B入门必看:VLA模型与传统端到端/模块化架构的本质差异 1. 引言:自动驾驶决策的十字路口 想象一下,你正在教一个新手司机开车。传统的方法有两种:一种是让他死记硬背所有交通规则和操作步骤(模块化&…...
企业级工作流系统实战:30分钟从零搭建RuoYi-Flowable-Plus
企业级工作流系统实战:30分钟从零搭建RuoYi-Flowable-Plus 【免费下载链接】RuoYi-Flowable-Plus 本项目基于 RuoYi-Vue-Plus 进行二次开发扩展Flowable工作流功能,支持在线表单设计和丰富的工作流程设计能力。如果觉得这个项目不错,麻烦点个…...
FPGA音频播放器避坑指南:WM8731 I2C配置与左对齐时序的那些坑
FPGA音频播放器避坑指南:WM8731 I2C配置与左对齐时序的那些坑 第一次听到自己设计的FPGA音频播放器发出刺耳的噪音时,我盯着示波器上扭曲的波形陷入了沉思。作为嵌入式开发者,我们总在数字与模拟的交界处行走,而WM8731这颗看似简单…...
实战剖析:利用EFDD与VeraCrypt破解加密磁盘文件
1. 加密磁盘破解的核心原理 当你面对一个加密的VeraCrypt容器时,第一反应可能是"这数据还能救吗?"。我处理过几十起类似案例,可以明确告诉你:只要获取到内存转储文件,就有很大概率能还原出加密密钥。这里的关…...
零基础学习数据库:用快马AI生成你的第一个可操作图书管理系统
作为一个刚接触数据库的小白,最近在InsCode(快马)平台上尝试做了一个图书管理系统项目,整个过程意外地顺利。这里记录下我的学习心得,希望能帮到同样零基础的朋友们。 为什么选择图书管理系统作为入门项目 图书管理系统包含了数据库最基础的…...
