0、寫在前面
Elastic 中國開發者大會2018,乾貨滿滿。已然成爲Elastic技術愛好者的狂歡日。前端
個人感觸以下:
一、Elastic各個產品線新特性大放異彩,Elastic早已不止是檢索,已經成爲一體化的完整數據處理堆棧,從數據攝入到分析展現、價值獲取。功能更完善、更加簡單、易用用、更可視化、更安全。安全
二、Elastic XPack/SQL等付費功能會從大公司到小公司逐漸推廣。網絡
三、隨着Elastic上市,國內的業務也開展的如火如荼,從BAT等互聯網公司、華爲、到三大運營商、各大銀行各個行業、各個領域都在以ELK做爲基礎架構,根據本身的業務作定製開發、優化、APM、自動化等;
這個勢頭也擴展到中小企業,將來幾年更會滿地開花。架構
四、Elastic社區在Elastic國內外進程中功不可沒,「三人行必有我師」,大神們的實踐對咱們本身的Elastic學習、實踐都有很好的借鑑價值。運維
一、Elasticsearch 最新產品新特性
1.1 更壯大的產品線
AuditBeat
FunctionBeat
Stack Monitoring
Logstash:Pipline Viewerelasticsearch
1.2 更快的索引
更小的存儲
更快的性能提高
更少的空間存儲
可視化ide
在這裏插入圖片描述函數
1.3 更完備的kibana
1)kibana加強的字段檢索功能
2)可擴展的跨集羣檢索功能
3)跨大版本檢索功能
支持5.X、6.X、7.X檢索工具
4)Sql支持ODBC性能
1.4 更強大的安全性
1)去掉缺省的密碼:changeme
2)加強的oAuth和kerberos安全認證
3)加強的kibana Spaces
開發者
安全
銷售團隊
每種Space有不一樣的權限
1.5 更NB的功能
1)索引管理UI
2)加強版本升級提高
以前的版本升級要先升級到主版本的大版本。
3)跨集羣備份
二、Beats創始人分享
2.1 Beats起源
1)咱們更關注Metrics指標而非日誌自己。
2)將日誌+metric指標+APM集成到一個系統造成Beats。
2.2 全棧的監控
底層、中間層、前端
Beats
開箱即用的解決方案
用模型和module蒐集日誌
用面板觀看指標和維度信息
2.3 更強的可視化
1)性能追求不間斷追求;
2)加強數據攝取穩定性,更快、不丟數;
3)kibana管理ES集羣、用戶權限管理、統一的UI入口。
金融、傳統制造業、線下設備等都會發力
三、ElasticCode
雲端代碼的搜索方案,Elasticsearch能夠搜索Code了
3.1 ElasticCode初衷
最好的開發工具,爲開發者貢獻更好的開發工具。
結合Elastic的影響力,2018.07 codeSearch加入Elastic。
3.2 ElasticCode產品介紹
一、幫助開發者理解、搜索、鏈接生產數據+代碼倉庫。
二、集成在kibana中。
3.3 Elastic Code解決問題
小的代碼庫——能夠在IDE裏面作到。
若是是大的代碼庫、地域分佈也大——Elastic Code是好的方案。
Github上不也能夠搜索代碼? 痛點是什麼?
TF-IDF 沒有辦法區分源代碼和非代碼;
搜索類的時候,更關注類的定義而不是調用場景;
3.4 ElasticCode還在開發階段
1)、能夠跳轉到定義的地方。
2)、告訴方法全部被應用的地方。
3)、列舉全部的成員函數、成員變量。
4)、生成環境結合kibana,定位產品問題對應源代碼所在。
四、華爲雲——雲搜索Elasticsearch實戰
雲搜索服務 = Elasticsearch + kibana+華爲雲化加強自研
4.1 站內搜索
4.1.1 智能分詞
解決問題:一、新詞;二、短語搜索、三、多租戶問題
解決方案:泊松分詞器
問題1:新詞沒法被搜索
舉例:李世石是人名。
解決思路:馬爾科夫模型訓練
問題2:英文短語搜索
解決方案:泊松分詞器 一行一個詞
問題3:多租戶、多詞庫設定
解決方案:泊松分詞器,對每一個索引指定不一樣的詞庫。
4.1.2 智能搜索(越搜越準)
解決方案:
記錄用戶的點擊流信息 + 數據模型 = 提高搜索質量
點擊流:文檔+搜索語句+時間等信息
數據模型訓練:深度學習、神經網絡相關
4.2 多媒體搜索
4.2.1 圖像檢索
適用場景:圖像版權、AR呈現、商品檢索、素材檢索。
方案:提取圖像特徵、量化、支持向量檢索。
向量檢索是暴力檢索,主要要比較,會有性能和精度問題。
支持向量的表達方式:
1)原始向量
2)Hash值
……
4.2.2 音頻檢索
適用場景:音頻、音樂版權
解決方案:
音頻指紋:每段音頻找到高能量的點,造成一個指紋。
指紋搜索——轉化爲文檔搜索。
效果:100W首歌,共230ms時間。
4.3 日誌&指標
日誌接入
CSV文件接入
實時流計算服務FLink
4.4 運維服務化
一、優化
TopHtis + Sumbucket的聚合
TopHits優化爲LastHits
二、一鍵部署
三、一鍵節點擴容、磁盤擴容
四、監控
五、OBS手動、定時備份
五、新加坡打車 Grab技術運維分享
Grab Elastic運維實踐目的:高可用、幫助開發者
Grab相似:滴滴,擴展外賣、大衆點評等擴展應用。
銘毅總結:Grab前後經歷:AWS -> Elastic Cloud -> Elastic Cloud 企業版本,在Elastic 雲化應用走出本身的實踐道路。
5.1 個集羣擴展到40+集羣
5.2 使用AWS雲
AWS加了一層代理
離線壓測
5.3 監控
1)AWS原生態CloudWatch監控很差
2)DataDog監控
3)Scalyr慢查詢、延時監控
https://www.scalyr.com/pricing
5.5 機器和內存關係
六、ELK在暴雪遊戲中的應用
早期的監控方案:Guardian
新的數據平臺:Telemetry
數據:Event、logs、Metrics
數據流架構
新的數據平臺的好處:
BEAM自研告警系統