分享

pig store oracle

wh6130 发表于 2013-10-16 13:40:54 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 1 7375
REGISTER ojdbc14.jar;
REGISTER /usr/lib/pig/piggybank.jar;
REGISTER Cdr.jar;
DEFINE DPI cn.cinfotech.cdr.pig.ToDpi();
raw = LOAD 'hbase://DPI201211281540'
       USING org.apache.pig.backend.hadoop.hbase.HBaseStorage(
       'cf1:content', '-loadKey true')
       AS (id:chararray, value:bytearray);
logs = FOREACH raw GENERATE flatten(DPI(value));
agreement = FOREACH logs GENERATE (up_traffic+down_traffic) AS flow,protocol,(end_time-start_time) AS times,msisdn;
agreement = FILTER agreement BY (protocol is not null) AND (msisdn is not null);
group_ap = FOREACH (GROUP agreement BY protocol) GENERATE group AS prot, SUM(agreement.flow) AS fl,'201211281540','yyyymmddHH24mi';
group_online = FOREACH (GROUP agreement BY msisdn) GENERATE group AS ms, SUM(agreement.times) AS t,'201211281540','yyyymmddHH24mi';
STORE group_ap INTO 'aaa' USING  org.apache.pig.piggybank.storage.DBStorage('oracle.jdbc.driver.OracleDriver','jdbc:oracle:thin:@135.251.208.137:1521:orcl','aa','aa','insert into test_ddd values(?,?,to_date(?,?))');
STORE group_online INTO 'bbb' USING  org.apache.pig.piggybank.storage.DBStorage('oracle.jdbc.driver.OracleDriver','jdbc:oracle:thin:@135.251.208.137:1521:orcl','aa','aa','insert into test_eee values(?,?,to_date(?,?))');
脚本如上,注释掉任意一个STORE都可以写入oracle,为什么两个STORE能执行成功,但写入不了oracle呢?
              
               
               

已有(1)人评论

跳转到指定楼层
wh6130 发表于 2013-10-16 13:41:26

            没人知道吗,自己研究研究DBStorage源码了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条