基于ELK的简单数据分析
生活随笔
收集整理的這篇文章主要介紹了
基于ELK的简单数据分析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文鏈接:?http://www.open-open.com/lib/view/open1455673846058.html
環境
- CentOS 6.5 64位
- JDK 1.8.0_20
- Elasticsearch 1.7.3
- LogStash 1.5.6
- Kibana 4.1.4
介紹
-
ElasticSearch是有名的開源搜索引擎,現在很多公司使用ELK技術棧做日志分析,比如新浪使用ELK處理每天32億條記錄,詳細的介紹可以查看這里
-
我們的數據量沒有新浪那么大,一天正常水平在6千萬條左右,多的時候有一個億條記錄,受到新浪案例的啟發我們基于ELK搭建自己的簡單數據分析系統,剛開始選擇這個的原因:(1)就我一個人折騰東西, (2)我不會前端,但是ELK中的kibana可以直接利用,(3)Hadoop/Hbase、Storm等大數據棧需要學習成本,短期內上手難度太大。(4)可用的機器數也是相當屌絲。
環境搭建
- 需要安裝好Java,配置JAVA_HOME,bin目錄添加到PATH環境變量
ElasticSearch
- 下載ElasticSearch,然后解壓到/opt
- 執行/opt/elasticsearch-1.7.3/bin/elasticsearch -d 就可以在后臺啟動,但是為了同時管理ELK三個進程,我選擇了supervisor做統一管理
- 啟動ElasticSearch之后,我們需要關閉字符串的分詞,對于數據分析的需求是不需要的,同時會存在問題,但是當作為搜索引擎的時候,這又是必須的。 關閉字符串的分詞curl -XPUT http://localhost:9200/_template/template_1 -d '{"template": "*","settings": {"index.refresh_interval": "5s"},"mappings": {"_default_": {"_all": {"enabled": true},"dynamic_templates": [{"string_fields": {"match": "*","match_mapping_type": "string","mapping": {"index": "not_analyzed","omit_norms": true,"type": "string"}}}],"properties": {"@version": {"type": "string","index": "not_analyzed"}}}} }'
Kibana
- 下載Kibana,然后解壓到/opt
- 運行/opt/kibana-4.1.4-linux-x64/bin/kibana,同樣適用supervisor管理
- 訪問http://YourIP:5601即可
Logstash
- 到目前為止我們還沒有數據源
- 下載LogStash,解壓到/opt
-
編寫如下配置文件
我們的數據來源于kafka中的一個topic,格式是json,輸出到elasticsearch的索引,按天變化
簡單的數據分析
- 跑了四個多小時,差不多有890w數據
-
我們先來看看設備的操作系統版本號(android 4.4.4的設備最多,差不多有300萬)
-
設備型號分布
轉載于:https://www.cnblogs.com/beautiful-code/p/6264507.html
總結
以上是生活随笔為你收集整理的基于ELK的简单数据分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 孕晚期梦到三条蛇是什么意思
- 下一篇: 用nginx做了一下反向代理,得到的ip