30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)

大濤學長發表於2019-10-29
摘要: 阿里雲Elasticsearch提供100%相容開源Elasticsearch的功能,以及Security、Machine Learning、Graph、APM等商業功能,致力於資料分析、資料搜尋等場景服務。與開源社群背後商業公司Elastic戰略合作,為客戶提供企業級許可權管控、安全監控告警、自動報表生成等場景服務。本文中,阿里雲產品專家沐澤為大家介紹了阿里雲Elasticsearch產品的相關情況。

產品介紹

Elasticsearch(簡稱ES)是2010年推出的一款開源產品,本質上是一個實時的分散式實時搜尋與分析引擎。隨著這些年來Elasticsearch生態的演進,逐漸發展成為ELK即Elasticsearch、Logstash、Kibana的生態。Elasticsearch屬於搜尋引擎,Logstash負責資料的採集、轉化以及輸出,Kibana則提供了強大的資料視覺化功能。對於Elasticsearch而言,其在DB-Engines中的開源資料庫排行榜中位列第一。可以看出,Elasticsearch受到了廣泛的認可,並且也有大量的開發者正在使用。


30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)


阿里雲Elasticsearch提供了全託管的Elasticsearch服務,並且100%相容開源版本,並且對於核心進行了針對性最佳化,提供了商業功能(原‘X-Pack’),即開即用,高可用服務,彈性伸縮,按需付費。在下圖中,在阿里雲Elasticsearch的可靠性、安全性、系統託管等方面與友商的產品進行了對比。在可靠性方面,阿里雲Elasticsearch具有99.9%的資料可靠性,並且會定時地向OSS進行資料備份,方便使用者在資料出現問題的時候進行恢復。此外,透過同城多活,提供了較強的容災能力。在開源差異部分,阿里雲Elasticsearch也做了大量的工作。在核心效能最佳化部分,不僅做了儲存與計算分離,還提供了ECS本身的調優。在Index Build服務部分,Elasticsearch本身支援高併發的資料寫入加速,這樣會使得資料的寫入和查詢相互影響,阿里雲Elasticsearch則透過Index Build服務離線地構建索引,並將原生索引切換成比較小的片並與線上索引進行Merge,這樣就避免了使用者線上叢集的I/O開銷,在一定場景下保障了高併發寫入場景下的查詢服務的穩定性。在智慧運維方面,阿里雲Elasticsearch提供了EU智慧運維繫統,能夠幫助使用者運維和監控叢集並且進行智慧分析,方便使用者更好地瞭解叢集的健康狀況,並且還提供了預警以及改進建議等功能。此外,阿里雲Elasticsearch近期還整合了阿里達摩院的NLP分詞器和分析器,能夠更好地完成業務的分析和檢索任務。在商業外掛部分,X-Pack服務本身整合在Elasticsearch和Kibana裡面的。以往這樣的商業版外掛包對於使用者而言,需要付費使用,阿里雲Elasticsearch透過這樣的方式為使用者提供了很多功能,如認證授權、許可權管理、報表視覺化以及機器學習等。總體來看,相比友商的ES方案以及使用者自建ES,阿里雲Elasticsearch的價格也具有較強的優勢,並且具有更加豐富的產品能力,同時也具有比較高的價效比。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)


基於以上的目標能力,阿里雲Elasticsearch也具有非常豐富的目標場景,主要集中在IT運維、資訊檢索以及日誌分析等方面。在IT運維方面,使用者可以做Metric監控、網路日誌分析等相關工作。資訊檢索方面,不僅支援APP檢索,也可以用於資料庫加速以及聚合搜尋等場景。在日誌分析方面,可以用於Web日誌分析、風控/審計/分析、使用者行為分析/使用者畫像以及BI分析和Ad-hoc等場景下。最後,阿里雲Elasticsearch的主要購買方式就是包年包月預付費和按量後付費兩種。

產品輸出形式

對於阿里雲Elasticsearch產品的輸出形式而言,主要在公共雲和專有云這兩個方面。在公共雲上,阿里雲Elasticsearch支援了金融雲、零售雲以及菜鳥雲,並且在日本站和國際站進行了售賣。在專有云方面,8月底的時候阿里雲Elasticsearch也提供了輕量PaaS獨立輸出,並且可以在企業版On ECS和企業版On物理機上進行部署。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)

產品架構

在產品架構部分,阿里雲Elasticsearch部署在ECS網段,相當於購買了大量的ECS伺服器拉起了ES映象。對使用者而言,可以購買很多的ES叢集,每個ES叢集中都會有很多的Node,每個Node就是一臺ECS。整個ECS部署在系統方VPC內,並且支援跨可用區的同城容災能力,也就是說在同一個區域下面,可以在不同的可用區內部署服務,透過阿里雲VPC和使用者VPC之間的IP對映使得每個叢集的Node分佈在不同的可用區之內。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)


除此之外,在保證容災方面,使用者的資料節點會定時地向OSS做快照備份,當使用者的資料出現問題的時候,可以快速地透過OSS實現資料恢復。整體的資料儲存型別支援高效雲盤、SSD雲盤以及本地磁碟。在儲存計算分離方面,阿里雲Elasticsearch近期也在核心方面進行了最佳化。本身Elasticsearch索引為了方便儲存需要做分片,為了提升查詢效率,每個分片會有多個副本,但是這樣屬於用空間換時間的方式,因此會造成大量的資料冗餘,為使用者帶來很高的儲存成本。另外一方面,為了提升查詢效率,使用者在寫入資料的時候,就會增加更多的記憶體開銷,進而造成寫入速度較慢。在這樣的背景之下,阿里雲Elasticsearch做了儲存與計算分離的核心最佳化,將使用者資料的多個副本進行分片對映到同一塊的物理介質之上,與原生的ES相比,阿里雲Elasticsearch的儲存成本降低至少50%,資料寫入實時效能提升70%,Replica/Shard變更效能提升99%,以上這些能力都是開源版本的ES所不具備的。

公共雲可售賣區域

目前,阿里雲Elasticsearch除了美東、英國和杜拜三個區域還沒有部署售賣之外,在全球範圍內的其他阿里雲資料中心都已經部署售賣了,未來也會在更多的區域進行開放。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)

金融持久化資料審計方案

這裡介紹一個實際案例,這是阿里云為一家信用卡結算公司設計的金融持久化資料庫審計方案。該客戶存在金融資料監管需求,因此資料需要儲存的時間較長,因此造成資料量非常大。因此,阿里雲提供了金融持久化資料庫審計方案中為使用者提供了一個三層的資料儲存方案,使用者近期的Hot Data會在第一層ECS儲存大約2個月的時間,當變成Warm Data或者更老的資料之後,就會儲存到下層的ECS或者OSS之上,這樣一方面保障了使用者在使用阿里雲Elasticsearch時的資料查詢時效性,使得其不會被大資料量所影響,另外一方面也大大降低了使用者的儲存成本。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)

場景示例-日誌分析

這裡針對於日誌分析場景進行更進一步的介紹。在日誌分析方面,會採集使用者在網站/遊戲/應用內的行為日誌資料,分為離線和線上兩個部分分別投遞給Hadoop及Elasticsearch,以滿足使用者(離線部分)標籤、畫像的加工,和(線上部分)使用者行為實時統計和狀態查詢。阿里雲Elasticsearch在日誌分析場景下提供了很多對應的能力,面向日誌分析場景,提供聚合搜尋、實時查詢、增量資料快速索引歸檔等分析必備能力。除此之外,阿里雲Elasticsearch基於X-Pack服務提供了基於LBS的地理位置搜尋、視覺化分析報表、資料視覺化展現等高階分析能力。進一步可以實現使用者留存分析,瀏覽路徑分析,基於地理圍欄的使用者畫像,使用者標籤體系等資料查詢、統計以及分析場景。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)

Elasticsearch如何處理日誌

日誌資料的來源有很多,比如日誌檔案、資料庫、感測器以及Web API等,而利用這些日誌資料實現日誌搜尋和日誌分析會存在很多常見的需求,主要包括五點,即集中收集與儲存、日誌搜尋、分析聚合及視覺化、安全、角色管理以及可伸縮性。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)

  • 在集中收集與儲存日誌資料方面,阿里雲Elasticsearch會對於常規日誌資料進行採集,包括日誌檔案、日誌系統、網路擁堵等其他常見的日誌資料。阿里雲Elasticsearch透過收集和匯攏資料以及離線Hadoop資料遷移能夠比較快捷地集中日誌資料並儲存到Elasticsearch中構建索引。
  • 在日誌搜尋方面,阿里雲Elasticsearch能夠支援全文檢索、後設資料搜尋、指標/標籤搜尋以及地理位置搜尋等。
  • 在分析聚合和視覺化方面,當資料聚合到阿里雲Elasticsearch裡面去之後,可以透過sum、average、min/max等聚合函式實現聚合分析,並且可以透過X-Pack實現機器學習分析,也可以藉助Kibana實現線上資料視覺化。並且在阿里雲Elasticsearch中,使用者可以直接透過Kibana控制檯實現配置以及視覺化皮膚的建立。
  • 在安全和角色管理方面,阿里雲Elasticsearch提供了RBAC的使用者許可權以及TLS/SSL互動式安全協議,並且能夠實現實時監控和觸發告警,能夠幫助使用者進行實時預防。此外,基於X-Pack的商業功能能夠提供自動資料包表以及觸發式報表等服務,幫助使用者更好地進行資料管理和查詢。
  • 在可伸縮性方面,阿里雲Elasticsearch能夠支援彈性擴容,因為ES的節點是對等的,因此能夠實現快速複製和彈性擴容,實現不同規模下的資料管理。

阿里巴巴Elasticsearch的產品生態架構

資料會從RDS等資料儲存中過來,透過Flume、EMR、MaxCompute等下游計算引擎進行加工和處理,完成畫像或者標籤的工作,最後索引到Elasticsearch中去。阿里雲Elasticsearch是相容整個大資料生態的,並且也能夠無縫地對接整個阿里雲的產品生態,進而非常方便地完成資料的處理工作。此外,還可以透過Kibana可以幫助使用者更好地實現資料的視覺化管理。

30分鐘全方位瞭解阿里雲Elasticsearch(附公開課完整影片)



本文為雲棲社群原創內容,未經允許不得轉載。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947441/viewspace-2661792/,如需轉載,請註明出處,否則將追究法律責任。

相關文章