kibana查询及可视化操作

一、kibana与ES交互

Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索、查看交互存储在Elasticsearch索引中的数据。使用Kibana可以通过各种图表进行数据聚合分析及展示,但在数据分析方面由于ES为非关系型数据库对关联数据不好操作,文件不能跨索引关联查询只能支持单个索引的数据分析操作。目前官网上的kibana为英文版,可自行汉化版本。
https://www.elastic.co/guide/en/kibana/current/introduction.html

二、创建index

首先将ES和kibana搭建在一个服务器上,然后在kibana界面建立一个索引和ES建立的索引进行配对。在索引管理名称中添加*可匹配多个索引,一个index相当于一个数据库,我们添加的索引就是数据库中的表格。
关于索引建立的步骤如下:
1.打开kibana中的management管理
2.单击index patterns索引模块。
3.选择create index pattern模块,建立索引。
创建完成后点击索引模式中的index可查看它们的字段并修改字段类型。接下来我们就可以探索索引中的数据进行可视化绘图了

三、数据查询

点击开发工具可以在console中输入查询语句,GET 查看、post创建、delete删除、bulk方法批量插入数据。在搜索栏中可以用正则表达式来匹配我们需要的字段,或者在添加筛选模块手动添加筛选情况。常见的查询操作如下:

集群相关
查询集群健康状态
GET _cluster/health
查询所有节点
GET _cat/nodes
查询索引及分片的分布
GET _cat/shards
查询所有插件
GET _cat/plugins
索引相关查询
查询所有索引及容量
GET _cat/indices
查询索引映射结构
GET _index/_mapping
查询所有索引映射结构  
GET _all
查询所有的相同前缀索引
GET base_*/_search
查询所有索引模板
GET _template
1.查询所有数据
GET _search
{
  "query": {
    "match_all": {}
  }
}
2.查询指定字段下的数据,直接用match
GET base_prsync_log/_search
{
  "query": {
    "match": {
      "message": "sz*"      
    }
  }
}
3.当同一个属性满足逻辑或时的查询,用bool和should
GET base_prsync_log/_search
{
  "query": {
    "bool": {
      "should": [
        {
          "match": {
            "message": "sh*"
          }
        },
        {
          "match": {
            "message": "sz*"
          }
        }
      ]
    }
  }
}
4.多条件查询
GET base_prsync_log/_search,用bool和must
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "message": "sh*"
          }
        },
        {
          "match": {
            "agent.hostname": "win08-core-8-16-2"
          }
        }
      ]
    }
  }
}
5.范围查询并进行排序,用range:gte和lte指定范围,再用sort:asc和desc排序
GET base_company_event*/_search
{
  "query": {
    "range": {
      "p_stock2201_f033n": {
        "gte": 1000,
        "lte": 2300
      }
    }
  },
  "sort": [
    {
      "p_stock2201_f033n": {
        "order": "asc"
      }
    }
  ]
}
6.聚合查询
(1)固定用到size和aggs,field后面输入属性,from和to后边输入要分段的范围
GET base_company_event*/_search
{
  "size": 20,
  "aggs": {
    "p_stock2201_f033n": {
      "range": {
        "field": "p_stock2201_f033n",
        "ranges": [
          {
            "from": 1000,
            "to": 2000
          },{
            "from": 2000,
            "to": 3000
          },{
            "from": 3000,
            "to": 4000
          }
        ]
      }
    }
  }
}

四、可视化

对于需要展示的可视化数据我们首先要了解数据背景,然后决定用什么图形来呈现才能更好的表现出数据特点,安利《数据之美》这本书,它总结了关于数据呈现和思考的方式,对于我们后期的可视化选择具有一定的指导意义。

数据之美

导图

在kibana可视化界面提供了一系列的图表,包括条形图、饼图、标签云图、热力图、Markdown、Timelion等,另外在我们进行统计时只能选择一个索引模式,所以在统计过程中所需要的表格字段都要在一个索引中。在进行数据聚合分析时只支持数值类型的字段,我们的统计字段类型是number才可以在聚合下拉框中选择。
1.条形图或折线图
我们有垂直条形图可以用来显示指标的排名情况,也有水平条形图用来看分类指标的统计情况,折线图则可以用来观察趋势变化情况。
条形图

2.饼图
在饼图的设计中我们可以选择饼图和圆环图,多数情况下二维分类的圆环图用得比较多
饼图

3.指标图
对数据指标进行聚合
指标图

4.数据表
直接选择需要统计的字段,图表可导出成csv
数据表

5.热力图
热力图

6.标签云图
字体越大表示出现的次数越多
标签云图

7.Timelion
使用函数表达式构建时间序列,我们需要写Timelion表达式来呈现数据。
Timelion

常用函数如下,具体的函数意义可自己探索挖掘:

.es (.elasticsearc相同)
.static(value y轴值、label 标签)
.lines一个表达式默认展现出来会是一条线(width、fill、show boolean、step boolean、stack)
.bars展现为柱状图(width 、stack)
.points展现为一个个点(radius、weight、fill、fillColor、symbol)
.color选择颜色
.label修改标签,如.es(*).label(test)
.rangey轴取值
.yaxis对y轴的一些设置(min、max、position、label、color)
.scale_interval改变统计的间隔
.abs取绝对值
.cusum累加和
.divide .multiply .add .subtract显示的值除/乘…以某个值
.min .max最大值最小值操作
.derivative求导
.mvavg move avg 顾名思义,移动平均值(window、position)
.if (.condition相同)具体的函数意义可自己探索挖掘

以上为kibana查询及可视化的一些基础操作,目前正在学习中,如有错误请多多指教~

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容