【橘子Kibana】Kibana的分析能力Analytics简易分析
一、kibana是啥,能干嘛
我们经常会用es来实现一些关于检索,关于分析的业务。但是es本身并没有UI,我们只能通过调用api来完成一些能力。而kibana就是他的一个外置UI,你完全可以这么理解。
当我们进入kibana的主页的时候你可以看到这样的布局。
他展示了四大模块,分别是:
1、Enterprise Search 企业级搜索,这个不难理解,他本身就是和es密切配合的,当然可以做搜索。
2、Observability 可观测性,kibana可以用来监控应用的性能指标等一系列能力,因为他可以和APM整合使用。
3、Security 安全性,kibana可以收集指标信息,做出预警等一系列操作来保证安全性。
4、Analytics 分析 ,kibana可以在已有的数据上绘制图表,折线图还是直方图还是饼图等等,用来帮助你分析数据。
这都是他拥有的能力,可以看到其实kibana技术栈十分强大。你可以从他的目录进去看到他的能力和内容。
可见操作还是很方便的。而这四大能力,我们将会从Analytics 分析 开始逐步研究他的实现和操作。
二、填充数据
当我们有了es和kibana的时候,既然我们要研究分析功能,分析你得有数据吧。实际上你可以有很多种方式向es中写入数据,包括你直接调用es得api写入。但是这里我们不准备写代码,我们只看kibana.kibana中本身就是支持向es中灌数据的。我们来看这里。
1、导入kibana内置数据
我们这里先灌入kibana的内置数据,我们点进去这个Try sample data。
这里kibana为我们内置了三类数据。分别是:
1、Sample eCommerce orders:电商数据,你可以用来做一些电商分析。
2、Sample flight data:航空公司数据,如果你做一些航空,打车之类的业务,可以用这个模拟。
3、Sample web logs:web应用的日志数据分析,实际上这个我们比较常用,毕竟日志分析大家都有需求。
你只需要点击add data就能添加进去了,而且对应的es索引他也会给你创建。很自动化。
这里我们把三个数据都加进去。
添加进去之后你来到分析栏目的discover就能看到数据。
你可以切换你的数据类型,然后右边的列表就会展示出来,ok,此时我们算是成功导入了,我们接下来来看如何分析这几类数据。
2、导入自己的数据
我们还可以以json和csv格式导入外部数据,我们先来准备一份数据。这份数据可以到这个地址去下载。卖房子的样本数据
ok,我们来看操作。
点进去这里上传数据文件。
点击这个import我们来看。
此外你还要去Advanced去看一下我们导入数据索引的映射,也就是mapping,这个mapping在es中异常重要。
这三个部分你要检查一下,如果kibana设置的不对,你可以做修改,比如日期字段它要是没给你设置成date,可能后面你用日期范围检索就会有问题,目前看来我们这个好像没啥问题。
我们直接下一步就好了。
我们再回到Analytics的discover查看这个索引。
没数据的原因在于页面的检索条件范围。右上角有个时间范围是检索最近15分钟的数据,我们导入进去的数据估计时间都好几年前的了,所以我们调整一下检索条件。实际上如果有人要你分析几天之前或者多久之前的数据,你就可以来这里修改时间。
ok,此时就看到数据了,没有问题。
此时我们就完成了两种方式的填充数据,接下来我们会用这些数据来实现我们的功能。
三、分析数据
1、简单的分析例子
我们先来简单看一下如何玩,我们先来分析一下航空公司数据。
此时我们看到它以列表的形式展示出来了航空数据的内容,不过它默认展示近15分钟的(右上角的时间条件),这个近15分钟指的是数据中的timestamp字段范围。而且我们同事看到这个列表只展示了两列字段,分别是timestamp和整个文档,实际上这样很不可读,你直接读这个doc文档难看死了,所以我们可以来添加几个我们想要的列。
添加列
比如我想查看FlightNum航空公司号这个列。我们只需要在左侧点中这个字段的+号即可。
于是列表就变成了这样。
kql过滤条件
因为时间是右上角的条件,他会一直存在的。那如果我们想自己添加检索条件呢,上面有写kql的地方,也就是这里。
比如我想查看FlightNum为05ZASIX的数据,那就是这样。
当然你可能觉得这个kql很难写,不好记,放心你输入的时候kibana会有提示。而且如果你多个条件的话可以用and,如果你有优先级逻辑的话,可以用()括起来之类的操作都可以。而且它还支持通配符那些做模糊检索。数字类型的> <都可以的。
但是它存在一个问题,就是如果我执行完查询之后,再切出去再回来,这个他是不会为我们留下记录的。有时候你输入了一个很复杂的检索条件,再让你输入一遍,你是不是想死。
于是它提供了保存功能,我们可以把这个条件存起来,以后想用的时候就拿来用,我们来看一下。
我们可以在这保存我们的检索条件。
其中include fiters这个默认勾选的,其实就是保存你的条件,
include time filter默认不勾选,他是会保存你右上角那个时间条件,你想勾就勾吧。
等你再次想查的时候,只需要加载就好。。
此时条件就又被加载上去了,你也不用再写一遍了。
展示详情
那我如果想看这个文档的详情呢?
点这里就能展示详情,你可以看列表形式或者json形式都可以。
对字段的统计分析
我们有一个字段是Carrier,他表示航空的运营商,可能就是什么山东航空,国航之类的吧,具体老外的航空我也不太懂。假如我们要统计一下过去七天内的数据中各个航空公司的数量占比呢?注意这个功能对那些地理位置的存储字段没用。
而且你发现下面还能查看分析表visualize你点进去就看到他给你绘制了图表。
所以很方便。
按字段排序
我们这个列表你不指定就是按时间倒排的,如果我想按照FlightNum来排序呢?
全屏展示
点击这个可以全屏显示数据。不过好像没啥必要,比较鸡肋。
字段统计Field statistics
我们来到我们的列表。此时我们查看过去30天的数据,其实就是所有的数据。
我们看到这里有一个Field statistics的按钮,他的作用是帮助我们统计分析我们列表上展示的字段。点进去看看。我们列表有一个DistanceKilometers里程字段。
你能看到他他可以对某个字段进行分析,当然这是个测试功能,可能在未来高版本会正式启动。
他会列出什么排行榜,最大值,中值,最小值等等。
相关文章:

【橘子Kibana】Kibana的分析能力Analytics简易分析
一、kibana是啥,能干嘛 我们经常会用es来实现一些关于检索,关于分析的业务。但是es本身并没有UI,我们只能通过调用api来完成一些能力。而kibana就是他的一个外置UI,你完全可以这么理解。 当我们进入kibana的主页的时候你可以看到这样的布局。…...

【STM32】-TTP223B触摸开关
前言 本文章旨在记录博主STM32的学习经验,我自身也在不断的学习当中,如果文章有写的不对的地方,欢迎各位大佬批评指正。 准备工作 今天这篇文章介绍的是触摸开关这一外围硬件。 ST-link调试器STM32最小系统板单路TTP223B触摸传感器模块LE…...
三星手机人脸识别解锁需要点击一下电源键,能够不用点击直接解锁吗
三星手机的人脸识别解锁功能默认需要滑动或点击屏幕来解锁。这是为了增强安全性,防止误解锁的情况。如果希望在检测到人脸后直接进入主界面,可以通过以下设置调整: 打开设置: 进入三星手机的【设置】应用。 进入生物识别和安全&a…...

Frida使用指南(三)- Frida-Native-Hook
1.Process、Module、Memory基础 1.Process Process 对象代表当前被Hook的进程,能获取进程的信息,枚举模块,枚举范围等 2.Module Module 对象代表一个加载到进程的模块(例如,在 Windows 上的 DLL,或在 Linux/Android 上的 .so 文件), 能查询模块的信息,如模块的基址、名…...

网络安全 | F5-Attack Signatures-Set详解
关注:CodingTechWork 创建和分配攻击签名集 可以通过两种方式创建攻击签名集:使用过滤器或手动选择要包含的签名。 基于过滤器的签名集仅基于在签名过滤器中定义的标准。基于过滤器的签名集的优点在于,可以专注于定义用户感兴趣的攻击签名…...
004 mybatis基础应用之全局配置文件
文章目录 配置内容properties标签typeAlias标签mappers标签 配置内容 SqlMapConfig.xml中配置的内容和顺序如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandler…...

【岛屿个数——BFS / DFS,“外海”】
题目 推荐阅读 AcWing 4959. 岛屿个数(两种解法,通俗解释) - AcWing 1.岛屿个数 - 蓝桥云课 (lanqiao.cn) 代码 #include <bits/stdc.h> using namespace std; #define x first #define y second int dx4[4] {-1, 0, 1, 0}, dy4[4] …...

MySQL常用数据类型和表的操作
文章目录 (一)常用数据类型1.数值类2.字符串类型3.二进制类型4.日期类型 (二)表的操作1查看指定库中所有表2.创建表3.查看表结构和查看表的创建语句4.修改表5.删除表 (三)总代码 (一)常用数据类型 1.数值类 BIT([M]) 大小:bit M表示每个数的位数,取值范围为1~64,若…...

2025_1_27 C语言内存,递归,汉诺塔问题
1.c程序在内存中的布局 代码段(Code Segment) 位置:通常位于内存的最低地址。 用途:存储程序的可执行指令。 特点:只读,防止程序运行时被修改。数据段(Data Segment) 位置…...

开源音乐管理软件Melody
本文软件由网友 heqiusheng 推荐。不过好像已经是一年前了 😂 简介 什么是 Melody ? Melody 是你的音乐精灵,旨在帮助你更好地管理音乐。目前的主要能力是帮助你将喜欢的歌曲或者音频上传到音乐平台的云盘。 主要功能包括: 歌曲…...

Nginx开发01:基础配置
一、下载和启动 1.下载、使用命令行启动:Web开发:web服务器-Nginx的基础介绍(含AI文稿)_nginx作为web服务器,可以承担哪些基本任务-CSDN博客 注意:我配置的端口是81 2.测试连接是否正常 访问Welcome to nginx! 如果…...

【TCP 协议】确认应答机制 超时重传 三次握手 四次挥手
TCP报文首部 确认应答机制 TCP 是可靠的,指的是它能够确保数据从源端准确无误地传输到目的端。 当客户端和服务器通信时,客户端向服务器发送报文,那么,客户端怎么知道服务器已经收到报文了呢? 服务器收到客户端发的报…...

jenkins-k8s pod方式动态生成slave节点
一. 简述: 使用 Jenkins 和 Kubernetes (k8s) 动态生成 Slave 节点是一种高效且灵活的方式来管理 CI/CD 流水线。通过这种方式,Jenkins 可以根据需要在 Kubernetes 集群中创建和销毁 Pod 来执行任务,从而充分利用集群资源并实现更好的隔离性…...

基于vue和elementui的简易课表
本文参考基于vue和elementui的课程表_vue实现类似课程表的周会议列表-CSDN博客,原程序在vue3.5.13版本下不能运行,修改两处: 1)slot-cope改为v-slot 2)return background-color:rgb(24 144 255 / 80%);color: #fff; …...
可用的IPv6公共DNS(2025年1月更新)
境内IPv6 DNS: 1. 腾讯DNS:2402:4e00:: 2. 阿里DNS:2400:3200::1、2400:3200:baba::1 3. ISP(电信服务运营商)的IPv6 DNS,请以各ISP实际下发的为准,或拨打10000、10010、10086等号码询问人工…...

c高级复习
c高级复习...
电子信息工程专业主要研究哪一方面东西?
序言: 如今科技发展那叫一个迅猛,电子信息专业可是站在这股浪潮的 C 位,狠狠推动着社会向前跑。这专业就像一座神奇桥梁,把虚拟数字和现实生活紧紧相连,把那些信号变成咱们看到的画面、听到的声音。你看,从…...
RU 19.26安装(手工安装各个补丁)
使用手工方式打RU19.26 参考文档: Supplemental Readme - Grid Infrastructure Release Update 12.2.0.1.x / 18c /19c (Doc ID 2246888.1) 操作步骤: 1 Stop the CRS managed resources running from DB homes. 2 Run the pre root script. 3 Patch GI…...
深入理解Pytest中的Setup和Teardown
关注开源优测不迷路 大数据测试过程、策略及挑战 测试框架原理,构建成功的基石 在自动化测试工作之前,你应该知道的10条建议 在自动化测试中,重要的不是工具 对于简单程序而言,使用 Pytest 运行测试直截了当。然而,当你…...
如何利用AI工具来进行数据分析
利用AI工具进行数据分析可以显著提高效率和准确性,以下是详细步骤和方法: 1. 明确分析目标 在开始数据分析之前,首先需要明确分析的目标和问题。这包括确定需要解决的问题、期望的见解或结果,以及选择合适的AI工具和方法。 2. …...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...

工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...

家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...

微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...