【橘子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. …...

具身智能体俯视全局的导航策略!TopV-Nav: 解锁多模态语言模型在零样本目标导航中的顶视空间推理潜力
作者:Linqing Zhong, Chen Gao, Zihan Ding, Yue Liao, Si Liu 单位:北京航空航天大学,新加坡国立大学,香港中文大学多模态实验室 论文标题:TopV-Nav: Unlocking the Top-View Spatial Reasoning Potential of MLLM …...

npm:升级自身时报错:EBADENGINE
具体报错信息如下: 1.原因分析 npm和当前的node版本不兼容。 // 当前实际版本: Actual: {"npm":"10.2.4","node":"v20.11.0"}可以通过官网文档查看与自己 node 版本 兼容的是哪一版本的npm,相对应进行更新即可…...

微信小程序实现自定义日历功能
文章目录 1. 创建日历组件实现步骤:2. 代码实现过程3. 实现效果图4. 关于作者其它项目视频教程介绍 1. 创建日历组件实现步骤: 创建日历组件:首先,你需要创建一个日历组件,包含显示日期的逻辑。样式设计:为…...

Vue 3 中的 toRef 与 toRefs:使用与案例解析
在 Vue 3 的响应式系统中,toRef 和 toRefs 是两个非常实用的工具函数。它们主要用于将响应式对象的属性转换为单独的 ref,以便在模板或逻辑中更方便地使用。本文将详细介绍 toRef 和 toRefs 的用法,并通过一个老师信息的案例来演示它们的实际…...

问题修复记录:Linux docker 部署 dify,无法调用宿主机本地服务
重磅推荐专栏: 《大模型AIGC》 《课程大纲》 《知识星球》 本专栏致力于探索和讨论当今最前沿的技术趋势和应用领域,包括但不限于ChatGPT和Stable Diffusion等。我们将深入研究大型模型的开发和应用,以及与之相关的人工智能生成内容(AIGC)技术。通过深入的技术解析和实践经…...

代码随想录day20
235. 利用二叉搜索树的特性即可 /** lc appleetcode.cn id235 langcpp** [235] 二叉搜索树的最近公共祖先*/// lc codestart /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) :…...

【ProxyBroker】用Python打破网络限制的利器
ProxyBroker 1. 什么是ProxyBroker2. ProxyBroker的功能3. ProxyBroker的优势4. ProxyBroker的使用方法5. ProxyBroker的应用场景6.结语项目地址: 1. 什么是ProxyBroker ProxyBroker是一个开源工具,它可以异步地从多个来源找到公共代理,并同…...

分布式微服务系统架构第88集:kafka集群
使用集 群最大的好处是可以跨服务器进行负载均衡,再则就是可以使用复制功能来避免因单点故 障造成的数据丢失。在维护 Kafka 或底层系统时,使用集群可以确保为客户端提供高可用 性。 需要多少个broker 一个 Kafka 集群需要多少个 broker 取决于以下几个因…...

RocketMQ原理—5.高可用+高并发+高性能架构
大纲 1.RocketMQ的整体架构与运行流程 2.基于NameServer管理Broker集群的架构 3.Broker集群的主从复制架构 4.基于Topic和Queue实现的数据分片架构 5.Broker基于Pull模式的主从复制原理 6.Broker层面到底如何做到数据0丢失 7.数据0丢失与写入高并发的取舍 8.RocketMQ读…...

下载Visual Studio Community 2019
官方链接如下:Visual Studio Community 2019下载链接 https://learn.microsoft.com/zh-cn/visualstudio/releases/2019/system-requirements#download 目前官方仅建议2022版,已经关闭vs2019等旧版本,哪天开放了,记得踢我一下。 …...