Categories
程式開發

Impala在網易大數據的優化和實踐


導讀: 網易大數據平台的底層數據查詢引擎,選用了Impala作為OLAP查詢引擎,不但支撐了網易大數據的交互式查詢與自助分析,還為外部客戶提供了商業化的產品與服務。今天將為大家分享下Impala在網易大數據的優化和實踐。

01 Impala的定位及優勢

Impala有哪些優勢,讓我們選擇Impala作為網易內部的OLAP查詢引擎?

1. Impala在數據處理中的角色

先來看一下Impala在數據處理中的角色。

Impala在網易大數據的優化和實踐 1

對於數據量較少的場景,例如百萬數據以下的情況,可以採用傳統的關係型數據庫,如MySQL或者PostgreSQL等,或者一些文檔數據庫,比如MongoDB等。隨著數據量的增大,達到上億級別時,一般選擇分析型數倉來存儲,並使用OLAP引擎來查詢。此等規模的數據查詢,對響應時間的要求雖然比關係型數據庫要低,但一般也要求在秒級返回查詢結果,不能有太大的延遲。 Impala、Presto、Greenplum等都在此列。當規模繼續擴大到上百億以上時,則會選擇批處理引擎,如Hive、Spark來進行數據處理。

今天分享的Impala就是針對分析型數倉的查詢引擎。分析型數倉有很多種建模方式。

Impala在網易大數據的優化和實踐 2

以Druid和Click House為代表的寬表模型,還有以Impala等為代表的星型/雪花型的建模方式。我們將Impala作為通用的查詢引擎,比較典型的應用場景有自助數據分析、BI報表等。在分享的第三部分,有關於Impala在網易大數據平台“猛獁”中的介紹,以及在網易云音樂中的實際使用場景的說明。

原文鏈接:【https://www.infoq.cn/article/vlm5qwpIWeAsgHOuaZQK】。未經作者許可,禁止轉載。