開發者學堂課程【資料湖 JindoFS + OSS 實操幹貨36講:Impala 如何高效查詢 OSS 資料】學習筆記,與課程緊密聯系,讓使用者快速學習知識。
課程位址:
https://developer.aliyun.com/learning/course/833/detail/13970Impala 如何高效查詢 OSS 資料
内容介紹
一、背景介紹
二、Impala 使用 JindoSDK
三、 示範
一、 背景介紹
1. ApacheImpala 介紹
能夠對存儲在 Hadoop 叢集的 PB 級資料進行快速 SQL 查詢分析的布式 MPP 查詢架構.

2. 使用 JindoSDK 高效查詢 OSS 資料
JindoFS SDK 是一個簡單易用面向 Hadoop/Spark 生态的 OSS 用戶端,為阿裡雲 OSS 提供高度優化的 Hadoop FileSystem 實作。
通過 JindoFS SDR,可以在 Hadoop 環境中直接使用 oss://bucket/ 的方式通路阿裡雲 OSS 上的内容。
二、 Impal a使用 JindoSDK
1. 安裝 jar 包
下載下傳最新的 jar 包 jindofs-sdk-x.x.x.jar,将sdk包安裝到Impala的lib下。
cp jindofs-sdk-$(version].jar $IMPALA_HOME/lib/
2. 配置 JindoFS OSS 實作類
配置IMPALA使用的 core-site.xml配置JindoFS SDK 通路 OSS
代碼
fs.AbstractFileSystem.oss.impl
com.aliyun.emr.fs.oss.0SS
fs.oss.impl
com.aliyun.emr.fs.oss.Jindo0ssFileSystem
3. 配置 OSS Access Key
将 OSS 的 Access Key、Access Key Secret、Endpoint 等預先配置在 Hadoop 的core-site.xml 中。
jindo.common.accessKeyId
xxx
jindo.comon.accessKeySecret
xocx
jindo.comon.oss.endpoint
oss-cn-xox,aliyuncs.comk/value>
4. 使用JindoFSSDK通路OSS
1) 下載下傳測試資料集連結;
2) 上傳資料
hadoop fs -put test_data oss://bucket/dir
3) 建立表
CREATE EXTERNAL TABLE customer_demographics(
`cd_demo_sk` INT,
`cd_gender` STRING,
`cd _marital_status` STRING,
`cd_education_status` STRING,
`cd_purchase_estinate` INT,
`cd_credit_rating` STRING,
`cd_dep_count` INT,
`cd_dep_employed_count` INT,
`cd_dep_college_count` INT)
STORED AS PARQUET
LOCATION
‘OSS://bucket/dir’;
4) 查詢 OSS 表
select * from customer_demographics;
三、 示範
1. 下載下傳 JindoFS SDK;
2. 将 jar 包拷貝到 $IMPALA_HOME/lib/;
3. 修改 JindoSDK 配置;
4. 示範 Impala 加載和查詢 OSS 表
l 補充:相關資源
1. 下載下傳 JindoFS SDK:
https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindofs_sdk_download.md2. lmpala 使用:
JindoSDK:https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/impala/jindosdk on impala.md