當前位置:
首頁 > 最新 > 首個國人主導Apache頂級開源項目Kylin 實現萬億數據亞秒查詢

首個國人主導Apache頂級開源項目Kylin 實現萬億數據亞秒查詢

今天,大數據領域的發展如火如荼。TB、PB級的數據量已經不是什麼稀罕的事情了。作為大數據領域最重要的技術Hadoop及其強大的生態圈,雖然如今已經能夠在實時分析、多維分析、交互分析、機器學習、人工智慧上展現強大實力。但應用在需求日益增強的BI平台時,高效分析成了挑戰。

hadoop生態圈

Hadoop的誕生使得大數據的存儲和批處理得到妥善解決,SQL on hadoop即是為了加速大數據分析查詢出現的。以Hive為代表,Presto、Phonenix、Drill就是這樣的代表。它們的主要技術是MPP(大規模並行處理)和CS(列式存儲),MPP即調動多台計算機一直並行計算,用線性的資源來換取計算時間的線性下滑。列式存儲即將計算以按列存放(NoSQL),這兩種技術將SQL從小時級的查詢銳減到了分鐘級別。然而要想再進一步提高,技術也到了瓶頸。因為BI分析師在查詢大數據時,或者需要輸入一個查詢,然後去喝個coffee或者是玩會手機,才能等待出查詢結果,如果要分析的項目非常多或者分析是逐步依賴的話,這就是一個耗不起的用時。

這時候你就可以考慮Apache kylin(麒麟)了,它的工作原理本質上是MOLAP(多維立方體在線分體),將常用的耗時多的計算通過建立cube方式進行「預先計算」,當真正的查詢來時,只要利用提前計算好的結果再通過簡單的查詢過濾即可得到結果。其速度比一般的查詢會快一到兩個數量級。傳統大規模並行計算和列式存儲的查詢速度的時間複雜度為O(N),而kylin為O(1),隨著數據的海量增加,這一優勢會更明顯,甚至可以超越其他技術1000倍以上。

kylin技術框架

離線構建(預計算)過程。數據源是Hadoop和Hive,保存著等待分析的用戶數據,根據元數據定義,正文構建引擎從數據源中抽取數據,並構建cube,數據以關係表形式輸入。構建後的cube保存在右側的存儲引擎中,目前開源使用的Hbase。

在線查詢。用戶使用標準SQL查詢分析,Kylin支持目前主流的Restful API以用於web、移動端數據服務。jdbc、odbc給BI工具使用。SQL的書寫和傳統我們查詢hadoop數據的格式一模一樣,對於查詢用戶而言,完全無學習成本。而對於分析師而言,只需要關注cube的構建規則。目前kylin還支持在線智能cube分析,能夠幫助分析師更好地優化cube。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Adair品科技 的精彩文章:

TAG:Adair品科技 |