2016-07-08 67 views
2

我們正在建設與開源工具實時大數據工具。我們的主要目標是通過實時從卡夫卡服務器獲取日誌來監督和分析網絡。我們在教程中看到,我們必須將工具分爲兩部分:Analytic和Supervision,如下所示。如何將elasticsearch連接到apache spark或storm?

enter image description here

對於監管部分,我們選擇的解決方案Elasticsearch和Logstash。

關於部分的分析,我和我的團隊,以便與Elasticsearch使用比較阿帕奇風暴流和Apache風暴。儘管Apache的風暴是比Apache星火流真正的實時數據處理工具,更快,它不提供學習機庫,例如與Apache的火花。這就是我們選擇Apache Spark的原因。彈性網站表明它存在連接器ES-Hadoop以將Elasticsearch數據庫連接到Hadoop生態系統。我們可以在下圖中看到。 enter image description here

但是,我們對這幅圖有點困惑,因爲只有spark而不是所有的spark框架(MLlib,Spark Streaming ..)。我們做了一些假設,並提出了兩種最終可能的架構。我們只想知道技術上是否正確,如果我們沒有錯誤的方向。

與Apache星火流: enter image description here

與Apache風暴: enter image description here

回答

1

無論你的架構圖都OK。請記住,在這種情況下spark spark將不起作用。 Es-hadoop爲您提供輕鬆訪問apis,以便將數據從彈性數據中提取出來。它還提供了在spark sql的情況下獲取數據到火花框架(RDD)或數據框中的方法。一旦數據在框架中,所有的ml文庫都可以應用於ml或分析生成的數據。 Elastic無法傳輸數據,因此嚴格意義上的火花傳輸是不可能的。所以在圖中,箭頭指向hdfs可選,然後指向流式傳輸可以被刪除,箭頭指向hdfs。然而,我的擔心是實時運行mllib算法來預測實時性能。典型的用例可能是脫機生成modwl並實時使用模型進行分析。

+0

謝謝蘭德福。關於您的問題,我看到火花中的K-和線性迴歸算法可以實時使用。另外,我並不很瞭解spark sql的興趣。你解釋我嗎? –

+0

星火SQL的可用性,這樣的數據,星火數據幀一次,可以使用簡單的SQL語句一樣查詢。它可用。但是,如果您的工作流並不涉及在關係數據意義上處理數據,則Spark SQL不是您將使用的工具。 Spark SQL只是訪問彈性數據的另一種方式(因爲大多數人都熟悉使用RDBMS進行數據操作)。 – Ramdev

相關問題