這篇文章彙整了入門 Elastic Cloud Stack 的相關服務簡介,接下來的 30 天會透過一系列的文章帶著大家一起入門,這次的學習將會以試用 Elastic Cloud 為主。
ELK Stack
ELK 主要包含以下:
- Elasticsearch
- Logstash (選配) or Beats
- Kibana
Elasticsearch
Elasticsearch 是一個及時分散式的資料庫兼檢索引擎,並提供 REST API 方便大家操作,可以用在任何需要把資料儲存並快速進行全文檢索的地方,什麼時候可以用到檢索,一個搜尋引擎執行的目標就是優化查詢的速度,讓我們快速找到某個單詞或句子在文檔中出現的地方,過往經驗覺得比較適合的地方像是:
- GIS 資料
- 各種地方蒐集的 log
- 電商的產品分類、價格、關鍵字搜尋 (不用直接操作關聯資料庫減少負擔)
有三種使用方法:
- 本機安裝: Java Base 所以如果想要安裝在本機上就需要先準備相關的環境
- 使用 Elastic Cloud
- AWS、GCP 上的免費版 (Open Source 版本)
服務主要分成底下兩種:
- App Search: 匯入資料 csv、JSON 等資料
- Workplace Search: 整合第三方資料來源
- Confluence Cloud
- Confluence Server
- GitHub
- Google Drive
- Dropbox
- Jira Cloud
- Jira Server
- OneDrive
- Salesforce
- ServiceNowSharePoint Online
- Zendesk
Kibana
Kibana 是一個搭配 Elasticsearch 使用的使用者介面兼資料視覺化工具:
- 是一個開源的資料分析與視覺化平台,方便瀏覽 Elasticsearch 的資料並且製作圖表、Dashboard
- 是一個 Elastic Stack 的管理介面,像是安全性設定、使用者腳色、快照備份等等
- 是一個傳送門,像是透過 log 的分析就可以做到 Elastic 解決方案中的資訊安全事件管理 (SIEM)
Logstash or Beats
- Beats 是數據的蒐集工具,透過模組直接送數據到 Elasticsearch 或 Logstash
- Logstash 是資料處理的工具,能夠同時蒐集多個來源,統整轉換後再送進 Elasticsearch
全文檢索
之前有寫過一篇文簡單介紹了全文檢索的概念與應用,這裡簡單比較用一般資料庫與 Elastic Search 實作全文檢索服務的差異。
一般資料庫:
- 對資料庫下命令 Like 或是配置資料庫內建的全文檢索
- 寫程式串接
- 撰寫 API 供他人使用
- 撰寫 Client 端
- 需要相關背景知識進行效能調整
Elastic Search:
- 可以都透過 REST API 做相關操作、不需要對資料庫下命令
- 有現成的 App Search Client 可以套用
- 系統自動透過反向索引增進效能
Elastic Stack Training
官方提供了一系列的教學文,傳送門如下:
https://www.elastic.co/training/free#quick-starts
接下來的 30 天將一步步的將相關 Training 做過一遍,在完成後將相關知識應用在小專案上,Training 主要會分成兩塊
- Quick Starts
- Logging Quick Start
- Metrics Quick Start
- Application Performance Monitoring (APM) Quick Start
- Workplace Search Quick Start
- App Search Quick Start
- Fundamentals Training
- Observability Fundamentals
- Introduction to Observability: Logging
- Metrics Fundamentals
- APM Fundamentals
- Kibana Fundamentals
- Kibana for Splunk Users
- Fundamentals of Securing Elasticsearch
- Elastic SIEM Fundamentals
- Elastic Endpoint Security Fundamentals
- Anomaly Detection for Cybersecurity
- ECE Fundamentals
喜歡這篇文章,請幫忙拍拍手喔 🤣