我需要在 Pig 中加载某个分区(日期)的数据。此数据是在 Hive 中创建的,并按日期进行分区。所以我想通过 HCatalog 将数据加载到 Pig 中。
HCatalog 文档说,要在 Pig 中加载某个分区,首先加载整个数据集,然后对其进行过滤,即:
a = load 'web_logs' using org.apache.hcatalog.pig.HCatLoader();
b = filter a by datestamp > '20110924';
https://cwiki.apache.org/confluence/display/Hive/HCatalog+LoadStore 但恐怕这首先将整个数据加载到包a中,然后只在b中过滤。我是对还是错?
在 Hive 中这个工作(没有 HCat),你可以修剪数据以获得你想要的分区,即:
LOAD DATA INPATH 'filepath' INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]
与 HCatalog 的 Pig 中这个构造的等价物是什么?
谢谢!