clickhouse官方文档_clickhouse分析:结合grafana和metabase完成监控和数据分析

f30850f9b6b0a12ab4bdd94c312952c7.png点击上方蓝字关注我们

 关于clickhouse的监控和可视化界面,想必刚接触到ch的人是一头雾水,大厂往往会给ch集群定制各种监控和可视化分析,普通用户就需要我们自己寻求现成的开源工具,在一些常见的开源工具上,我们可以较好的使用和定制我们想要展示的内容。本文从grafana和metabase两个组件出发,分析了其安装和配合ch使用的过程。

grafana

安装

下载安装,见[1][2],ch需要注意下载插件并解压到插件目录即可。

使用

可以直接导入json来完成clickhouse的看板的生成。

9173f74442545d4e93a3bed019d23568.png

常用的看板

ClickHouse Queries

该看板要开启clickhouse的log配置才可以使用,其它的看板也有和其它监控工具结合完成的。

<log_queries>1log_queries>

大部分的监控都是基于system下的query_log,events和metrics等表完成的。

54da9381bb8198ae0cb58d5f8fe69ce0.png0d0047712338626b8cb456a776e560fb.png

我们也可以自己定制一些个性化的SQL展示出来,在这一点上与Metabase有点相似。

Metabase

安装

之前笔者也分析过一些关于metabase的安装等文章,所以对metabase比较熟悉,在得知其也支持clickhouse时,当然也是赶紧试用一下。除了metabase,业界使用的最多的是superset工具来做ch的数据分析可视化操作。

jar安装

java -jar metabase.jar

由于metabase默认没有clickhouse驱动,我们需要在额外添加该插件,如果你已经启动过metabase,会发现当前目录有plugins,将driver放入重启即可。(注意插件与metabase版本的对应关系,不然会出现一些使用异常,不然会出现如下异常)

No method in multimethod 'connection-details->spec' for dispatch value: :clickhouse

根据参考文章中的一些提示可以使用变量指定启动的端口号等配置:

export MB_JETTY_PORT=8080

出现如下异常:Distinct, non-empty sequence of Field clauses 54f6653100606f63aee70cca93841e79.png

这里出现的原因主要是metabase没有扫描完成我们的库,因为metabase需要把我们库中的字段等信息存储起来,没有扫描完成自然就没办法展示数据,笔者使用0.35版本无法扫描完成,更新到0.36版本才正常显示(若依然不能正常显示可在管理页面重新触发扫描)。

docker安装

docker命令:

docker run -d -p 3000:3000 --name metabase metabase/metabase

挂载clickhouse-driver的启动:

 docker run -d -p 3000:3000 \  --mount type=bind,source=/path/to/plugins,destination=/plugins \  --name metabase metabase/metabase123
ee299c090ab56cc72cede7a83268295a.png
img

配置

添加一个数据库:01b577236b2365ab30db4ff9b080950d.png

一些case

简单的表test_zookeeper(之前测试使用的表),结合官方文档的测试sql,完成几个场景的构建,建表语句:

CREATE TABLE default.test_zookeeper(    `Id`     Int32,    `Code`  Int32,    `Type` String) ENGINE = ReplicatedMergeTree('/clickhouse/tables/{layer}-{shard}/default_test_zookeeper',           '{replica}') PARTITION BY Code ORDER BY (Id, Code)    SETTINGS index_granularity = 8192;12345678
  • 求相同code下的最大id趋势图
848fb9b0e0f912960ee3072498cd7242.png
img
  • 官方的一些分析
3cd47f5ffb649b9036036e8d260bfe64.png
img

首先是当前表的count数,Code Test Zookeeper为Code出现的次数图,Type Test Zookeeper为Type出现的次数图。

  • 求Code为2020-2021之间出现的条目次数:
select Code,count(Type) as count from test_zookeeper where Code between 2020 and 2021 group by Code ;1
5ccc1e5968b3aaed01090eb48f863a6a.png
img
  • 求Code大于2020,Type中字符出现的次数的排行:
select Type, count(*) as count from test_zookeeper where Code > 2020 group by Type order by count(*) desc;1
51f869df3b0f21155fe909fe1929898d.png
img

参考文章

  1. grafana-clickhouse插件: https://grafana.com/grafana/plugins/vertamedia-clickhouse-datasource
  2. grafana官方:https://grafana.com/
  3. grafana-clickhouse相关看板:https://grafana.com/grafana/dashboards?search=clickhouse
  4. ClickHouse datasource for Grafana 4.6+:https://github.com/Vertamedia/clickhouse-grafana
  5. metabase:https://www.metabase.com/ https://downloads.metabase.com/v0.36.0/metabase.jar
  6. metabase挂载clickhouse数据源:https://blog.csdn.net/jiangshouzhuang/article/details/103917772
  7. metabase-clickhouse-driver: https://github.com/enqueue/metabase-clickhouse-driver
  8. 开源metabase安装:https://www.jianshu.com/p/2ae75635d237

end

如果您想了解更多有关深度学习、机器学习、java开发、大数据等知识,欢迎关注我们的公众号,我会整理分享关于这些的有趣文章。

0f11058996a7c9802a0b21365756c9d4.png

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

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

相关文章

hazelcast_带弹簧的Hazelcast分布式执行

hazelcastExecutorService功能是Java 5附带的&#xff0c;位于java.util.concurrent包中。 它扩展了Executor接口&#xff0c;并提供了线程池功能来执行异步简短任务。 建议使用Java Executor服务类型来查看基本的ExecutorService实现。 ThreadPoolExecutor也是ExecutorServic…

OpenCV测试程序

#include<opencv2\opencv.hpp> using namespace cv; int main() {Mat picture imread("1.jpg");//图片必须添加到工程目下//也就是和test.cpp文件放在一个文件夹下&#xff01;&#xff01;&#xff01;imshow("测试程序", picture);waitKey(201509…

Java中的do-while循环——通过示例学习Java编程(11)

作者&#xff1a;CHAITANYA SINGH 来源&#xff1a;https://www.koofun.com/pro/kfpostsdetail?kfpostsid22&cid0 在上一篇教程中&#xff0c;我们讨论了while循环。在本教程中&#xff0c;我们将讨论java中的do-while循环。do-while循环类似于while循环&#xff0c;但是它…

centos7离线安装mysql_Centos7离线安装metasploit详细教程

最近需在内网服务器搭建安全工具环境&#xff0c;苦于内网服务器无法访问互联网&#xff0c;需要很多依赖包比较麻烦&#xff0c;尤其metasploit无互联网安装特别麻烦&#xff0c;而且网上metasploit的安装教程均是在线一键安装教程&#xff0c;对于无法访问互联网的服务器进行…

净资产的结构

Netty的包装结构很棒。 每个程序员都应该研究它。 每个系统都应该模仿它&#xff1b; 每个项目经理都应将其打印出来&#xff0c;拍在墙上&#xff0c;然后对开发人员说&#xff1a;“那样。” Netty是一个“……用于快速开发可维护的高性能协议服务器和客户端的异步事件驱动…

常用的HTTP响应头

响应头 说明 示例 状态 Access-Control-Allow-Origin 指定哪些网站可以跨域源资源共享 Access-Control-Allow-Origin: * 临时 Accept-Patch 指定服务器所支持的文档补丁格式 Accept-Patch: text/example;charsetutf-8 固定 Accept-Ranges 服务器所支持的内容范围 …

iframe嵌入页面白屏_封闭在家学网页制作!为页面嵌入PDF文件——零基础自学网页制作

在页面中嵌入PDF文件在上一篇《在html页面中嵌入其他页面的方法——零基础自学网页制作》(结尾见目录)中我们学习了如何在页面中嵌入其他页面的操作。今天我们来嵌入一个pdf文件。其实使用示例代码如下&#xff1a;页面效果如下&#xff1a;考虑到pdf的版权问题就不给大家上传云…

ITK读取RGB图像像素值

/*这个程序接收输入参数作为文件路径&#xff0c; 读取指定的图片数据&#xff08;RGB&#xff09;&#xff0c; 并显示指定位置的像素值。&#xff08;这里是[0,0]位置&#xff09; */ #include "itkImage.h" #include "itkRGBPixel.h" #include "…

微小宝公众号排行榜_排行榜 | 山西省高校、高职中专微信公众号周数据排行榜...

戳上面的蓝字关注我们哦&#xff01;《山西教育》杂志社公众号“山西教育杂志”微信号shanxi_jiaoyu山西教育杂志社山西教育山西省高校微信公众号2020年周数据分析11月22日至11月28日WCI指数 通过微信公众号推送文章的传播度、覆盖度及公号的成熟度和影响力&#xff0c;来反映微…

二阶段冲刺第七天

站立会议时间&#xff1a;5.15 站立会议地点&#xff1a; 站立会议内容&#xff1a; 王建宁&#xff1a; 昨天把管理员界面上的listview添加了点击事件&#xff0c;点击进去可以填写维修信息&#xff0c;也可以对维修信息进行更改 今天制作管理员界面&#xff0c;长按对反馈信息…

垃圾收集算法,垃圾收集器_为什么我不能关闭垃圾收集器?

垃圾收集算法,垃圾收集器让我们开始快速回顾一下我作为Java开发人员的职业生涯的早期。 我想消除正在进行的测试中的垃圾回收&#xff08;GC&#xff09;暂停。 瞧&#xff0c;当我发现无法完成时&#xff0c;我很生气。 那时&#xff0c;我把问题留在了“设计错误”中&#xf…

串口 驱动 热敏打印机_热敏纸标签打印不出来文字 是因为……

点击↑箭头处“蓝色字”&#xff0c;关注我们哦&#xff01;&#xff01;Hello&#xff0c;各位纸友们好呀&#xff01;我是小冠~随着生活的需要&#xff0c;热敏纸标签在生活中也成了必不可少一个部分&#xff01;那么&#xff0c;为什么有的热敏纸标签有的时候会打印不出来文…

四级英语day14

1. instance /ˈɪnstəns/ n.例子 vt.举…为例2. formal /ˈfɔːməl/ a.①形式上的②正式的3. casual /ˈkʒuəl/ a.①漫不经心的②非正式的③临时的4. cause /kɔːz/ n.①原因②理由③事业 vt.引起5. foundation /faunˈdeɪʃən/ n.①地基②建立③根据6. generous…

JDK 9已完成功能!

今天的马克莱因霍尔德 &#xff08; Mark Reinhold&#xff09;消息JDK 9已完成功能完善-现在该降级了 &#xff0c; 它宣布JDK 9的“总体功能集已冻结”。 甲骨文Java平台小组的首席架构师Reinhold补充说&#xff1a;“极不可能将任何进一步的JEP定向到该发行版。” 与该消息类…

登录样式:log4j 2,上下文,自动清理…全部不附带任何字符串!

日志记录-保持操作的时间跟踪-对于任何关键任务系统&#xff0c;无论大小&#xff0c;都至关重要。 我们的Project-X框架也是如此 &#xff0c;这就是为什么我们希望从一开始就正确地做到这一点。 基于我们在传奇的UltraESB上的登录经验&#xff0c; 上下文日志记录&#xff0…

java date加一天_Java日期时间API系列15-----Jdk8中API类,java日期计算2,年月日时分秒的加减等...

通过Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析 &#xff0c;可以看出java8设计非常好&#xff0c;实现接口Temporal, TemporalAdjuster, ChronoLocalDate等&#xff0c;有非常丰富的方法。例如&#xff1a;LocalDateTime&#xff1…

霍夫变换(Hough Transform)

一、直线检测相关算法   1.1 霍夫变换&#xff08;Hough Transform&#xff09;  霍夫变换&#xff08;Hough Transform&#xff09;换于1962年由Paul Hough 首次提出&#xff0c;后于1972年由Richard Duda和Peter Hart推广使用&#xff0c;是图像处理中从图像中检测几何形…

JDK 9是某些功能的终结

几天前宣布JDK 9是Feature Complete&#xff01; 进行剪切的许多“功能”都是添加项&#xff0c;但有些是删除项。 这篇文章介绍了从OpenJDK和/或Oracle的JDK Java 9中删除的一些项目。 JEP 220 &#xff08;“模块化运行时图像”&#xff09;的一部分是删除了Java认可标准覆盖…

一种table超出高度自动出滚动条的解决方案

参考链接&#xff1a; http://www.cnblogs.com/xiaoafei1991/archive/2015/09/30/4781592.html转载于:https://www.cnblogs.com/ziyoublog/p/10870048.html

最近邻插值、双线性插值、双三次插值

1.最近邻插值 越是简单的模型越适合用来举例子&#xff0c;我们就举个简单的图像&#xff1a;3X3 的256级灰度图&#xff0c;也就是高为3个象素&#xff0c;宽也是3个象素的图像&#xff0c;每个象素的取值可以是 0&#xff0d;255&#xff0c;代表该像素的亮度&#xff0c;25…