在streaming process中爲什麼需要類似sql查詢語言

從現有的CEP(Complex Event Processing)框架,像強大得Esper,我們學到很多工作完全可以通過寫sql來完成的,不需要編寫任何的代碼。所以對於流處理我認爲也需要這樣的類似sql查詢語言。目前像Storm這樣的流處理平臺框架強迫使用者去實現像silding window,一些query pattern的操作。我認爲並不是每一個案例開發者都喜歡重寫這些東西。

所以我們需要high level的抽象,我可以完全把一些算法封裝好,直接拼裝調用即可,或者直接支持sql語法。我們可以從Hive for HadoopSpark SQLapache Flink中學習到很多。

下面列舉一下爲什麼需要類似sql查詢語言的原因:
1. 實時分析很複雜,業務開發人員很不情願去實現一些像sliding window,或者時間事件模式的算法;
2. SQL簡單,很容易理解和學習,開發成本低;
3. SQL語言簡短通用,而且快
4. SQL自身的核心語法可以解決90%的問題
5. 歷年來BI專家傾向的語言
6. 實時分析可以更好的優化SQL語言模型的執行計劃,大部分的優化操作已經在研究,有些已經研究出來了可以直接拿過來用。

Why We need SQL like Query Language for Realtime Streaming Analytics?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章