原创 Kylin實踐之使用Hive視圖

爲什麼需要使用視圖        Kylin在使用的過程中使用hive作爲cube的輸入,但是有些情況下,hive中的表定義和數據並不能滿足分析的需求,例如有些列的值需要進行處理,有些列的類型不滿足需求,甚至有時候在創建hive表

原创 OLAP引擎——Kylin介紹

     Kylin是ebay開發的一套OLAP系統,與Mondrian不同的是,它是一個MOLAP系統,主要用於支持大數據生態圈的數據分析業務,它主要是通過預計算的方式將用戶設定的多維立方體緩存到HBase中(目前還僅支持hbase),

原创 SQL查詢操作處理流程

SQL查詢   這裏看到書上講述SQL的查詢處理,在SQL中查詢是通過select語句以及一些輔助的子句來實現需要的輸出,這裏使用的是mysql,首先,要理解物理表和虛擬表的區別,物理表就是存儲在文件系統上的一個或者多個文件,按照

原创 新一代列式存儲格式Parquet

Apache Parquet是Hadoop生態圈中一種新型列式存儲格式,它可以兼容Hadoop生態圈中大多數計算框架(Hadoop、Spark等),被多種查詢引擎支持(Hive、Impala、Drill等),並且它是語言和平臺無關

原创 Impala優化基本方案

本文源自cloudera官網上的Impala文檔,原名爲《Impala Performance Guidelines and Best Practices》。主要介紹了爲了提升impala性能應該考慮的一些事情,這些條目算是對於性

原创 Hiveserver2的代理執行之路

背景 對於一個數據平臺的SQL查詢服務,impala提供了優於hive/spark sql等一批sql-on-mr/spark性能的查詢引擎,並且得益於impala可以直接共享hive的metastore,可以對用戶提供”一套數據,多種引

原创 談談分佈式Aggregation

前言 聚合操作(Aggregation)是OLAP分析查詢中最常見的操作之一,可以說它是數據分析查詢的基石,它對應這SQL中的GROUP BY子句,OLAP中的上卷下鑽操作無非就是對於GROUP BY和WHERE條件的改變,如何能夠高效的

原创 Impala高性能探祕之Runtime Filter

前言 書接上文,如果說HDFS的數據訪問層各個BigData SQL Engine做的都大同小異的話,那麼Runtime Filter(下文簡稱RF)則是Impala比較獨特的”黑科技”了,在深入學習Impala之前對於這個名詞比較陌生,

原创 JAVA開發血淚之路:一步步搭建spring框架

前言 作爲一個服務端開發感覺一直挺排斥框架這種東西的,總覺得什麼實現邏輯都幫你封裝在裏面了,你只需要配置這配置那個,出了問題也不知道怎麼排查,之前即使寫web程序也寧願使用jetty這樣的嵌入式的web server實現,自己寫servl

原创 一種解決Impala自定義屬性查詢的方案

背景 在使用Impala做自助分析的過程中,我們經常發現自定義屬性的需求,通常情況下用戶會將這種不確定key的字段全部塞到一個MAP字段中,然後通過Impala的複雜結構查詢語法進行查詢,目前Impala只支持Parquet格式表的sch

原创 Impala中的invalidate metadata和refresh

前言 Impala採用了比較奇葩的多個impalad同時提供服務的方式,並且它會由catalogd緩存全部元數據,再通過statestored完成每一次的元數據的更新到impalad節點上,Impala集羣會緩存全部的元數據,這種緩存機制

原创 Impala權限管理機制

在Impala中,權限管理的作用主要是確定某個用戶是否有權限訪問某些資源,用戶對於這些資源具有哪種訪問權限等,這裏涉及到三個概念:用戶,資源和權限。對於Impala 1.1之後的版本,可以直接集成Apache Sentry服務來實現Imp

原创 Impala負載均衡方案——zookeeper

由來 之前根據Impala官方的文檔嘗試使用haproxy實現impalad節點的負載均衡,但是這種方案存在一些弊端,例如haproxy本身也是單點的,雖然可以通過keeplived實現haproxy的高可用,但是這樣的配置難免有點太重了

原创 Impala負載均衡方案

概述 Impala分爲是三個組件,statestored/catalogd和impalad,其中statestored和catalogd是單點的,沒有高可用的需求,因爲這兩個實例是無狀態的,本身不存儲任何數據,例如catalogd的數據存

原创 Impala查詢詳解第一篇——簡介

Impala的定位是一種新型的MPP查詢引擎,但是它又不是典型的MPP類型的SQL引擎,提到MPP數據庫首先想到的可能是GreenPlum,它的每一個節點完全獨立,節點直接不共享數據,節點之間的信息傳遞全都通過網絡實現。而Impala可以