【问题标题】:Moving data to HBASE using Pig使用 Pig 将数据移动到 HBASE
【发布时间】:2016-11-09 14:35:48
【问题描述】:

我尝试在 hbase 中移动 851 数据,因为我使用以下命令创建了 hbase

create 'customers', 'customers_data'

我使用 pig 脚本移动了文件。我的猪脚本是

STOCK_A = LOAD '/user/cloudera/xxx' USING PigStorage('|');
data = FILTER STOCK_A BY ( $0 matches '.*MH.*');
MH_DATA = FOREACH data GENERATE $1, $3, $4;
STORE MH_DATA into 'hbase://customers' USING org.apache.pig.backend.hadoop.hbase.HBaseStorage('customers_data:firstname, customers_data:lastname, customers_data:age');

我使用 pig 命令获得了 851 个数据。我的数据是

    (aman,george,22)
    (aman,george,22)
    (aman,george,22)
     .
     .
     .
     .
     .
    851 

但是当我尝试使用以下命令将此数据放入 hbase 时

PIG_CLASSPATH=/usr/lib/hbase/hbase.jar:/usr/lib/zookeeper/zookeeper-3.4.5-cdh4.4.0.jar /usr/bin/pig /home/cloudera/remot/pighl7

存储在 HBASE 中的数据是

ROW                                         COLUMN+CELL                                                                                                                 
 \xB5~\x5C&                                 column=customers_data:firstname, timestamp=1478700582076, value=george
 \xB5~\x5C&                                 column=customers_data:lastname, timestamp=1478700582076, value=22

我找不到我的 851 记录以及第三个参数。我不知道我做错了什么。 请帮忙

【问题讨论】:

    标签: hadoop hbase apache-pig bigdata


    【解决方案1】:

    我认为您错过了在生成语句中提供别名(为了更安全,我已将您的元组转换为 chararray)

    最后还要为你的存储关系命名

    试试:

    MH_DATA = FOREACH data GENERATE (chararray)$1 AS firstname , (chararray)$3 AS lastname, (chararray)$4 AS age;
    
    STORE_IN_HBASE = STORE MH_DATA into 'hbase://customers' USING org.apache.pig.backend.hadoop.hbase.HBaseStorage('customers_data:firstname, customers_data:lastname, customers_data:age');
    

    有关更多信息,请点击此链接: https://pig.apache.org/docs/r0.14.0/api/org/apache/pig/backend/hadoop/hbase/HBaseStorage.html

    【讨论】:

    • 我尝试了你的方法,但我的 HBASE 中只有一行。在我的日志中我可以看到851 items stored in customers
    【解决方案2】:

    当我将 行键 从名称更改为时间戳时进行了大量研究和跟踪和错误后,我解决了我的问题,因为我使用的是与其他人具有相同名称的行键它总是更新它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多