大数据ClickHouse进阶:ClickHouse 数据查询
Posted Lansonli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据ClickHouse进阶:ClickHouse 数据查询相关的知识,希望对你有一定的参考价值。
文章目录
ClickHouse 数据查询
可以从官网下载官网提供的数据集hits_v1和visits_v1,对应的下载路径为:
https://datasets.ClickHouse.com/hits/partitions/hits_v1.tar
https://datasets.ClickHouse.com/visits/partitions/visits_v1.tar
下载之后对应两个压缩包:
hits_v1.tar
visits_v1.tar
将以上两个压缩包进行上传到node1节点/softwar目录下,并解压到目录”/var/lib/ClickHouse”中。
[root@node1 ~]# cd /software/
[root@node1 software]# tar xvf hits_v1.tar -C /var/lib/ClickHouse
[root@node1 software]# tar xvf visits_v1.tar -C /var/lib/ClickHouse
重启node1节点上的ClickHouse,查询数据:
[root@node1 ~]# service ClickHouse-server restart
[root@node1 ~]# ClickHouse-client
node1 :) show databases;
┌─name─────┐
│ datasets │
│ default │
│ system │
└──────────┘
#查询表 hits_v1中的数据量
node1 :) select count(*) from datasets.hits_v1;
┌─count()─┐
│ 8873898 │
└─────────┘
#查询表 visits_v1中的数据量
node1 :) select count(*) from datasets.visits_v1;
┌─count()─┐
│ 1676861 │
└─────────┘
ClickHouse完全使用SQL作为查询语言,能够以Selete查询语句从数据库中查询数据,虽然ClickHouse拥有优秀的查询性能,但是我们也不能滥用查询,掌握ClickHouse支持的各种查询子句很有必要,使用不恰当的SQL语句进行查询不仅带来低性能,还可能带来系统不可预知的错误。例如:我们使用select * 查询数据时,通配符*对列式存储的ClickHouse没有一点好处,针对一张拥有133个列的数据表hits_v1,查询2000行数据时,使用*与不使用*速度相差几乎300倍:
#使用*查询2000行数据
node1 :) select * from datasets.hits_v1 limit 2000;
2000 rows in set. Elapsed: 4.306 sec. Processed 2.00 thousand rows, 2.23 MB (464.50 rows/s., 518.76 KB/s.)
#不使用*查询2000行数据
node1 :) select WatchID from datasets.hits_v1 limit 2000;
2000 rows in set. Elapsed: 0.016 sec. Processed 2.00 thousand rows, 16.00 KB (126.48 thousand rows/s., 1.01 MB/s.)
此外需要注意,ClickHouse中对字段的解析大小写敏感,select a与select A表示的语义不同,下篇文章我们学习下ClickHouse中支持的查询语句,敬请期待。
- 📢博客主页:https://lansonli.blog.csdn.net
- 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
- 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
- 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
以上是关于大数据ClickHouse进阶:ClickHouse 数据查询的主要内容,如果未能解决你的问题,请参考以下文章
大数据ClickHouse进阶(二十三):ClickHouse用户配置
大数据ClickHouse进阶(二十四):ClickHouse权限管理
大数据ClickHouse进阶:ClickHouse 数据查询
大数据ClickHouse进阶:ClickHouse的with子句