針對Elasticsearch的開源分析及可視化平臺——Kibana

Kibana是一個針對Elasticsearch的開源分析及可視化平臺,用來搜索、查看交互存儲在Elasticsearch索引中的數據。使用Kibana,可以通過各種圖表進行高級數據分析及展示。

   Kibana讓海量數據更容易理解。它操作簡單,基於瀏覽器的用戶界面可以快速創建儀表板(dashboard)實時顯示Elasticsearch查詢動態。

   在雲市不需要複雜部署安裝,一鍵使用Kibana。設置Kibana也非常簡單,無需編碼或者額外的基礎架構,一分鐘只能就能啓動Elasticsearch索引監測。



Kibana不是一個統計工具

   Kibana 因其豐富的圖表類型和漂亮的前端界面,被很多人理解成一個統計工具。而我個人認爲,ELK 這一套體系,不應該和 Hadoop 體系同質化。定期的離線報表,不是 Elasticsearch 專長所在(多花費分詞、打分這些步驟在高負載壓力環境上太奢侈了),也不應該由 Kibana 來完成(每次刷新都是重新計算)。Kibana 的使用場景,應該集中在兩方面:

   1.實時監控

   通過 histogram 面板,配合不同條件的多個 queries 可以對一個事件走很多個維度組合出不同的時間序列走勢。時間序列數據是最常見的監控報警了。



   2.問題分析

   通過 Kibana 的交互式界面可以很快的將異常時間或者事件範圍縮小到秒級別或者個位數。期望一個完美的系統可以給你自動找到問題原因並且解決是不現實的,能夠讓你三兩下就從 TB 級的數據裏看到關鍵數據以便做出判斷就很棒了。

   這時候,一些非 histogram 的其他面板還可能會體現出你意想不到的價值。全局狀態下看似很普通的結果,可能在你鎖定某個範圍的時候發生劇烈的反方向的變化,這時候你就能從這個維度去重點排查。而表格面板則最直觀的顯示出你最關心的字段,加上排序等功能。入庫前字段切分好,對於排錯分析真的至關重要。



主要功能

Elasticsearch無縫之集成

   Kibana架構爲Elasticsearch定製,可以將任何結構化和非結構化數據加入Elasticsearch索引。Kibana還充分利用了Elasticsearch強大的搜索和分析功能。

整合你的數據

   Kibana能夠更好地處理海量數據,並據此創建柱形圖、折線圖、散點圖、直方圖、餅圖和地圖。

複雜數據分析

   Kibana提升了Elasticsearch分析能力,能夠更加智能地分析數據,執行數學轉換並且根據要求對數據切割分塊。



讓更多團隊成員受益

   強大的數據庫可視化接口讓各業務崗位都能夠從數據集合受益。

接口靈活,分享更容易

   使用Kibana可以更加方便地創建、保存、分享數據,並將可視化數據快速交流。

可視化多數據源

   Kibana可以非常方便地把來自Logstash、ES-Hadoop、Beats或第三方技術的數據整合到Elasticsearch,支持的第三方技術包括Apache Flume、Fluentd等。




簡單數據導出

   Kibana可以方便地導出感興趣的數據,與其它數據集合並融合後快速建模分析,發現新結果。

與Elasticsearch REST API實現可視化交互

   Sense是一個可視化終端,通過Kibana插件支持自動補全、自動縮進和語法檢查功能。提升了與Elasticsearch API交互的體驗。



注意事項

Kibana 目前不支持對保存在 Elasticsearch 中的 dashboard 做這個事情

   所以一定得保存成 yourname.json 文件放入 app/dashboards/ 目錄裏才行。




靜態的 JSON 文件其實是利用模板技術

   所以直接導出得到的 JSON 文件還不能直接起作用。需要稍微做一點修改。

   你可以打開默認可用的 logstash.json 文件,看看有什麼奇特的地方,沒錯,就是下面這樣:

  "query": "{{ARGS.query || '*'}}"

   而你自己保存下來的 JSON,這裏都會是具體的數據。所以,要讓自己的 JSON 佈局也支持動態儀表板的話,按照這個寫法也都加上 ARGS.query 就好了!

   從 logstash.json 裏還可以看到,除了 ?query= 以外,其實還支持 from= 參數,默認是 24h。



用 JSON 的侷限

   動態儀表板其實有兩種用法,這裏只用到了 file/logstash.json 靜態文件方式,這種方式只支持一個 query 條件,也沒有太多的附加參數支持。而 script/logstash.js 方式,支持多個 query 條件,以及 index、pattern、interval、timefield 等更多的參數選項。

   當然,研究一下 angularjs 的用法,給 JSON 文件裏也加上 ARGS.query 的 split 方法,也不算太難。




   如果你想試用Kibana,那就掃一下上方二維碼,或者點擊“閱讀全文”前往「好雨雲市」網站查看Kibana詳情,一鍵即可使用。而且在雲市,你會發現不只Kibana一款有料的雲應用……


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章