簡體   English   中英

Pig:從配置單元表獲取數據並將分區添加為列

[英]Pig: get data from hive table and add partition as column

我有一個分區的Hive表,我想在Pig腳本中加載該表,並希望將分區也添加為列。

我怎樣才能做到這一點?

Hive中的表定義:

CREATE EXTERNAL TABLE IF NOT EXISTS transactions
(
column1 string,
column2 string
)
PARTITIONED BY (datestamp string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LOCATION '/path';

豬腳本:

%default INPUT_PATH '/path'

A = LOAD '$INPUT_PATH'
         USING PigStorage('|')
         AS (
         column1:chararray, 
         column2:chararray,
         datestamp:chararray  
         );

datestamp列未填充。 為什么會這樣呢?

對不起,我還沒有說將分區添加為列的部分。 創建分區鍵后,其行為就像常規列一樣。 您到底需要什么?

而且您是直接從給定的HDFS位置而不是作為Hive表加載數據。 如果打算使用Pig從Hive表加載數據/將數據存儲到Hive表中,則應使用HCatalog

例如 :

A = LOAD 'transactions' USING org.apache.hcatalog.pig.HCatLoader();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM