尚硅谷大数据技术ClickHouse教程-笔记01【ClickHouse单机安装、数据类型】
视频地址:一套上手ClickHouse-OLAP分析引擎,囊括Prometheus与Grafana_哔哩哔哩_bilibili
- 01_尚硅谷大数据技术之ClickHouse入门V1.0
- 尚硅谷大数据技术ClickHouse教程-笔记01【ClickHouse单机安装、数据类型】
- 尚硅谷大数据技术ClickHouse教程-笔记02【表引擎、SQL操作】
- 尚硅谷大数据技术ClickHouse教程-笔记03【副本、分片集群】
- 02_尚硅谷大数据技术之ClickHouse高级V1.0
- 尚硅谷大数据技术ClickHouse教程-笔记04【】
- 尚硅谷大数据技术ClickHouse教程-笔记05【】
- 尚硅谷大数据技术ClickHouse教程-笔记06【】
- 03_尚硅谷大数据技术之ClickHouse监控及备份V1.0
- 尚硅谷大数据技术ClickHouse教程-笔记07【】
- 尚硅谷大数据技术ClickHouse教程-笔记08【】
- 尚硅谷大数据技术ClickHouse教程-笔记09【】
- 他人笔记
- ClickHouse学习笔记(一):ClickHouse安装、数据类型、表引擎、SQL操作
- ClickHouse学习笔记(二):执行计划、建表优化、语法优化规则、查询优化、数据一致性
目录
课程介绍
P01【01_ClickHouse总体_课程介绍】13:19
第1章 ClickHouse入门
P02【02_ClickHouse入门_课程介绍】03:25
P03【03_ClickHouse入门_介绍&特点】24:52
第2章 ClickHouse的安装
P04【04_ClickHouse入门_安装_准备工作】18:37
P05【05_ClickHouse入门_安装_单机安装】25:13
第3章 数据类型
P06【06_ClickHouse入门_数据类型】21:39
课程介绍
P01【01_ClickHouse总体_课程介绍】13:19
课程介绍
一、课程重点内容
1、入门:一学就会
2、高级:
explain 20.6版本之后才有
优化:建表时优化、RB0优化规则、使用过程中做的优化(单表查询、多表关联)
参数配置优化:cpu、内存,建议值
特性:物化视图、20.8之后的物化MySQL
常见问题
3、监控及备份二、课程特色
1、新 ClickHouse 21.3.7.14
2、细 文档详细,复制粘贴
3、全 几乎涵盖所有需要,一条龙搞定
4、真 常见问题三、资料获取方式
1、关注微信公众号:尚硅谷教育,回复:大数据、java
2、谷粒学院
3、b站
四、技术基础要求
sql基础 + zookeeper基础 + linux基础
第1章 ClickHouse入门
P02【02_ClickHouse入门_课程介绍】03:25
01_尚硅谷大数据技术之ClickHouse入门V1.0
- 第1章 ClickHouse入门
- 第2章 ClickHouse的安装
- 第3章 数据类型
- 第4章 表引擎
- 第5章 SQL操作
- 第6章 副本
- 第7章 分片集群
P03【03_ClickHouse入门_介绍&特点】24:52
ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的列式存储数据库(DBMS),使用 C++ 语言编写,主要用于在线分析处理查询(OLAP),能够使用 SQL 查询实时生成分析数据报告。
第2章 ClickHouse的安装
P04【04_ClickHouse入门_安装_准备工作】18:37
soft:当前生效的。
hard:最大限制,代表上限。
soft <= hard
SELinux,security enforce Linux
P05【05_ClickHouse入门_安装_单机安装】25:13
clickhouse官网:Fast Open-Source OLAP DBMS - ClickHouse
[atguigu@node001 ~]$ sudo tail -111f /var/log/clickhouse-server/clickhouse-server.err.log
2024.06.20 20:46:51.774410 [ 76705 ] {} <Error> Application: DB::Exception: Listen [::]:9000 failed: Poco::Exception. Code: 1000, e.code() = 98, e.displayText() = Net Exception: Address already in use: [::]:9000 (version 20.4.5.36 (official build))
2024.06.20 20:47:23.085468 [ 81914 ] {} <Error> Application: DB::Exception: Listen [::]:9000 failed: Poco::Exception. Code: 1000, e.code() = 98, e.displayText() = Net Exception: Address already in use: [::]:9000 (version 20.4.5.36 (official build))
2024.06.20 20:47:54.584052 [ 87242 ] {} <Error> Application: DB::Exception: Listen [::]:9000 failed: Poco::Exception. Code: 1000, e.code() = 98, e.displayText() = Net Exception: Address already in use: [::]:9000 (version 20.4.5.36 (official build))
^C
[atguigu@node001 ~]$ netstat -anp |grep 9000
(No info could be read for "-p": geteuid()=1001 but you should be root.)
tcp 0 0 0.0.0.0:9000 0.0.0.0:* LISTEN -
tcp 0 0 172.17.0.1:59898 172.17.0.2:9000 ESTABLISHED -
tcp6 0 0 :::9000 :::* LISTEN -
tcp6 0 0 ::1:58926 ::1:9000 ESTABLISHED -
tcp6 0 0 ::1:9000 ::1:58926 ESTABLISHED -
[atguigu@node001 ~]$
[atguigu@node001 ~]$ sudo tail -111f /var/log/clickhouse-server/clickhouse-server.err.log2024.06.20 20:46:51.774410 [ 76705 ] {} <Error> Application: DB::Exception: Listen [::]:9000 failed: Poco::Exception. Code: 1000, e.code() = 98, e.displayText() = Net Exception: Address already in use: [::]:9000 (version 20.4.5.36 (official build))
2024.06.20 20:47:23.085468 [ 81914 ] {} <Error> Application: DB::Exception: Listen [::]:9000 failed: Poco::Exception. Code: 1000, e.code() = 98, e.displayText() = Net Exception: Address already in use: [::]:9000 (version 20.4.5.36 (official build))
2024.06.20 20:47:54.584052 [ 87242 ] {} <Error> Application: DB::Exception: Listen [::]:9000 failed: Poco::Exception. Code: 1000, e.code() = 98, e.displayText() = Net Exception: Address already in use: [::]:9000 (version 20.4.5.36 (official build))
^C
[atguigu@node001 ~]$ netstat -anp |grep 9000
(No info could be read for "-p": geteuid()=1001 but you should be root.)
tcp 0 0 0.0.0.0:9000 0.0.0.0:* LISTEN -
tcp 0 0 172.17.0.1:59898 172.17.0.2:9000 ESTABLISHED -
tcp6 0 0 :::9000 :::* LISTEN -
tcp6 0 0 ::1:58926 ::1:9000 ESTABLISHED -
tcp6 0 0 ::1:9000 ::1:58926 ESTABLISHED -
[atguigu@node001 ~]$ sudo lsof -i :9000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
docker-pr 1728 root 4u IPv4 34453 0t0 TCP *:cslistener (LISTEN)
docker-pr 1733 root 4u IPv6 36317 0t0 TCP *:cslistener (LISTEN)
[atguigu@node001 ~]$ kill -9 1728
-bash: kill: (1728) - 不允许的操作
[atguigu@node001 ~]$ sudo kill -9 1728
[atguigu@node001 ~]$ clickhouse-client -m
ClickHouse client version 20.4.5.36 (official build).
Connecting to localhost:9000 as user default.
^C
[atguigu@node001 ~]$ sudo kill -9 1733
[atguigu@node001 ~]$ clickhouse-client -m
ClickHouse client version 20.4.5.36 (official build).
Connecting to localhost:9000 as user default.
Code: 210. DB::NetException: Connection refused (localhost:9000)[atguigu@node001 ~]$ sudo systemctl start clickhouse-server
[atguigu@node001 ~]$ clickhouse-client -m
ClickHouse client version 20.4.5.36 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.4.5 revision 54434.node001 :)
[atguigu@node001 ~]$ clickhouse-client -m
ClickHouse client version 20.4.5.36 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.4.5 revision 54434.node001 :) show databases;e = ReplacingMergeTree(ts) partition by toYYYYMMDD(stt) order by(stt, edt);
SHOW DATABASES┌─name───────────────────────────┐
│ _temporary_and_external_tables │
│ default │
│ edu_realtime │
│ system │
└────────────────────────────────┘4 rows in set. Elapsed: 0.013 sec. node001 :) use system;USE systemOk.0 rows in set. Elapsed: 0.016 sec. node001 :) show tables;SHOW TABLES┌─name───────────────────────────┐
│ aggregate_function_combinators │
│ asynchronous_metrics │
│ build_options │
│ clusters │
│ collations │
│ columns │
│ contributors │
│ data_type_families │
│ databases │
│ detached_parts │
│ dictionaries │
│ disks │
│ events │
│ formats │
│ functions │
│ graphite_retentions │
│ macros │
│ merge_tree_settings │
│ merges │
│ metric_log │
│ metrics │
│ models │
│ mutations │
│ numbers │
│ numbers_mt │
│ one │
│ parts │
│ parts_columns │
│ processes │
│ quota_usage │
│ quotas │
│ replicas │
│ replication_queue │
│ row_policies │
│ settings │
│ stack_trace │
│ storage_policies │
│ table_engines │
│ table_functions │
│ tables │
│ trace_log │
│ zeros │
│ zeros_mt │
└────────────────────────────────┘43 rows in set. Elapsed: 0.018 sec. node001 :) ^C
node001 :) quit
:-] ;
Bye.
[atguigu@node001 ~]$ clickhouse-client --query "show databases;";
_temporary_and_external_tables
default
edu_realtime
system
[atguigu@node001 ~]$
第3章 数据类型
P06【06_ClickHouse入门_数据类型】21:39
单机不需要启动zookeeper,集群需要启动zookeeper,集群需要中间协调者,clickhouse依赖于zookeeper,元数据、副本表这些东西需要依赖于zookeeper。
[atguigu@node001 ~]$ clickhouse-client -m
ClickHouse client version 20.4.5.36 (official build).
Connecting to localhost:9000 as user default.
Code: 210. DB::NetException: Connection refused (localhost:9000)[atguigu@node001 ~]$ sudo systemctl start clickhouse-server
[atguigu@node001 ~]$ clickhouse-client -m
ClickHouse client version 20.4.5.36 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.4.5 revision 54434.node001 :) create table t_enum ( x Enum8('hello' = 1,'world' = 2)
:-] ) engine = TinyLog;CREATE TABLE t_enum
(`x` Enum8('hello' = 1, 'world' = 2)
)
ENGINE = TinyLogOk.0 rows in set. Elapsed: 0.013 sec. node001 :) insert into t_enum values ('hello'),('world'),('hello');INSERT INTO t_enum VALUESOk.3 rows in set. Elapsed: 0.042 sec. node001 :) insert into t_enum values('a');INSERT INTO t_enum VALUESException on client:
Code: 36. DB::Exception: Unknown element 'a' for type Enum8('hello' = 1, 'world' = 2)Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.4.5 revision 54434.node001 :) select cast(x,'Int8') from t_enum;SELECT cast(x, 'Int8')
FROM t_enum┌─cast(x, 'Int8')─┐
│ 1 │
│ 2 │
│ 1 │
└─────────────────┘3 rows in set. Elapsed: 0.022 sec. node001 :) SELECT currentDatabase();SELECT currentDatabase()┌─currentDatabase()─┐
│ default │
└───────────────────┘1 rows in set. Elapsed: 0.024 sec. node001 :) select * from t_enum;SELECT *
FROM t_enum┌─x─────┐
│ hello │
│ world │
│ hello │
└───────┘3 rows in set. Elapsed: 0.006 sec. node001 :) insert into t_enum values('haha');INSERT INTO t_enum VALUESException on client:
Code: 36. DB::Exception: Unknown element 'haha' for type Enum8('hello' = 1, 'world' = 2)Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.4.5 revision 54434.node001 :) select * from t_enum;SELECT *
FROM t_enum┌─x─────┐
│ hello │
│ world │
│ hello │
└───────┘3 rows in set. Elapsed: 0.002 sec. node001 :) show tables;SHOW TABLES┌─name────────────────────────────────────────┐
│ dws_trade_cart_add_window │
│ dws_trade_course_order_window │
│ dws_trade_order_window │
│ dws_traffic_source_keyword_page_view_window │
│ dws_user_register_window │
│ t_enum │
└─────────────────────────────────────────────┘6 rows in set. Elapsed: 0.017 sec. node001 :)
数组的简单用法:
select array(1, 2) as x, toTypeName(x);
select [1, 2] as x, toTypeName(x);
node001 :) select array(1, 2) as x, toTypeName(x);SELECT [1, 2] AS x, toTypeName(x)┌─x─────┬─toTypeName([1, 2])─┐
│ [1,2] │ Array(UInt8) │
└───────┴────────────────────┘1 rows in set. Elapsed: 0.009 sec. node001 :) select [1, 2] as x, toTypeName(x);SELECT [1, 2] AS x, toTypeName(x)┌─x─────┬─toTypeName([1, 2])─┐
│ [1,2] │ Array(UInt8) │
└───────┴────────────────────┘1 rows in set. Elapsed: 0.005 sec. node001 :) 相关文章:
尚硅谷大数据技术ClickHouse教程-笔记01【ClickHouse单机安装、数据类型】
视频地址:一套上手ClickHouse-OLAP分析引擎,囊括Prometheus与Grafana_哔哩哔哩_bilibili 01_尚硅谷大数据技术之ClickHouse入门V1.0 尚硅谷大数据技术ClickHouse教程-笔记01【ClickHouse单机安装、数据类型】尚硅谷大数据技术ClickHouse教程-笔记02【表引…...
生产管理系统看板,在自动化设备领域的创新应用
在自动化设备领域,生产管理系统看板的创新应用是一项引人注目的技术进步。以广州某自动化设备有限公司为例,他们是一家涂装工程设备制造企业,将讯鹏生产管理系统电子看板成功应用于全自动立式静电喷粉线、卧式静电喷粉线、氟碳喷涂生产线等领…...
分享一个图片转换工具XnConvert
目录 stablediffusion3 生成图片效果图图片转换工具XnConvertpixzip stablediffusion3 生成图片效果图 今天在使用stablediffusion3时,尝试生成了几张Java的图片,发现确实很好看,文生图的效果超出我的预期,忍不住想要给自己的csd…...
Nginx后端超时504重复请求
在一次业务中客户端请求osb平台再经过nginx转发后端,开发反馈请求次数大于1导致问题,经排查客户端请求一次,osb平台设置超时为30s,nginx配置等待上游服务器响应时最多等待30秒 部分配置文件 upstream xx {server 10.6.6.1:8080 w…...
环境配置04:Pytorch下载安装
说明: 显存大于4G的建议使用GPU版本的pytorch,低于4G建议使用CPU版本pytorch,直接使用命令安装对应版本即可 GPU版本的pytorch的使用需要显卡支持,需要先安装CUDA,即需要完成以下安装 1.查看已安装CUDA版本 GPU对应…...
【杂记-浅谈私有地址】
私有地址 一、私有IP地址概述1、私有IP地址的实用性2、私有IP地址的局限性 二、私有IP地址范围1、A类私有地址2、B类私有地址3、C类私有地址 三、私有IP地址与公网IP地址的区别 一、私有IP地址概述 私有IP地址是互联网工程任务组(IETF)为组织机构内部使…...
Java基础学习-数组
目录 数组定义 注意点: 地址值是数组在内存中实际存储的地址。 案例遍历:遍历数组得到每一个元素,求数组里面所有数据和 案例:定义数组,遍历能被3整除的数字 案例:遍历一个数组,奇数将当前…...
爬虫 pandas Linux Flume Pig填空题
目录 试卷:Python网络数据处理 答案 试卷:Pandas基础操作 答案 试卷:Linux基础指令 答案 试卷:Apache Flume基础指令 答案 试卷:Apache Pig基础指令 答案: Hadoop题 答案 试卷:Pyth…...
Spring框架中哪些地方使用了反射
Spring框架中哪些地方使用了反射? 1. 依赖注入:Spring 使用反射机制获取对象并进行属性注入,从而实现依赖注入。 2. AOP:Spring AOP 使用 JDK 动态代理或者 CGLIB 字节码增强技术来实现 AOP 的切面逻辑,这其中就包含…...
难辨真假的Midjourney案例(附提示词):适合练手
人物 时尚女孩 Street style fashion photo, full-body shot of a young Chinese woman with long curly black hair, walking confidently with a crowd of people down a sidewalk in Hong Kong, wearing a emerald green Gucci maxi dress & gold jewelry, sunset lig…...
数据库讲解---(数据库保护)【上】
一.事务 1.1事务的概念【重要】 事务:“将一组数据库操作打包起来形成一个逻辑独立的单元,这个工作单元不可分割,其中包含的数据要么全部都发生,要么全部都不发生”。 在SQL中,界定事务的语句有三条: B…...
【Android】【Compose】Compose的简单介绍
前言 Jetpack Compose 是谷歌推出的用于构建现代化 Android 应用界面的工具包。它采用了声明式的方式来定义用户界面,与传统的 XML 布局和视图层次结构相比,Compose 提供了更直观、更简洁的方式来创建和管理界面组件。 需求配置 Android 版本要求 An…...
对接钉钉Stream模式考勤打卡相关事件的指南
钉钉之前的accessToken是公司级别的,现在的accessToken是基于应用的,接口的权限也是基于应用的。所以第一步是在钉钉开放平台(https://open-dev.dingtalk.com/)创建一个应用。 创建好应用之后,因为我们后续还需要调用钉…...
CRMEB PRO企业微信通讯录配置
企业微信通讯录配置 登录企业微信管理后台 企业微信 1、点击【管理工具】找到【通讯录同步】点击进入 2、点击【开启API接口同步】 进入设置【通讯录同步】页面后,权限一栏,勾选【API编辑通讯录】勾选【开启手动编辑】; 3、点击下图箭头所…...
直播新篇章 | 金仓数据库“零距离”探索与知识挑战双重奏
KING大咖成就计划 全新进阶!!!携手知识竞答挑战赛震撼来袭~为您带来一场别开生面的金仓数据库探索之旅与知识竞答盛宴! 直 播 活 动 01 大咖引领,KING BASE产品“零距离”体验 您是否对金仓数据库充满好奇🧐…...
List的介绍
1. 什么是List List是一个接口,继承自Collection。 Collection也是一个接口,该接口中规范了后序容器中常用的一些方法。 Iterable也是一个接口,表示实现该接口的类是可以逐个元素进行遍历。 2. 常见接口介绍 List中提供了好的方法&#x…...
Uniapp获取具体地理位置
使用uniapp自带uni.getLocation获取当前定位经纬度 再调用高德逆地理编码API,查到具体位置信息 https://restapi.amap.com/v3/geocode/regeo?location${longitude},${latitude}&key${key}&extensionsall 但是个人申请的key,有配额限制 最多每…...
Kafka基础教程
Kafka基础教程 资料来源:Apache Kafka - Introduction (tutorialspoint.com) Apache Kafka起源于LinkedIn,后来在2011年成为一个开源Apache项目,然后在2012年成为一流的Apache项目。Kafka是用Scala和Java编写的。Apache Kafka是基于发布-订…...
视频智能分析平台智能边缘分析一体机安防监控平台打手机检测算法工作原理介绍
智能边缘分析一体机的打手机检测算法是一种集成了计算机视觉和人工智能技术的先进算法,专门用于实时监测和识别监控画面中的打手机行为。以下是关于该算法的详细介绍: 工作原理 1、视频流获取: 智能边缘分析一体机首先通过连接的视频监控设…...
辅助构造函数相关学习以及php实现
https://mp.weixin.qq.com/s/J9hgLTxYi7ZJdFVG2VszQg 对这个文章进行摘要生成 ### 总体概要 文章阐述了在对象创建过程中,辅助构造函数(或称为“多个”构造函数)的重要性,它们为代码增加了功能性逻辑,并允许根据需求调…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...
shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
数据链路层的主要功能是什么
数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...




