代码之家  ›  专栏  ›  技术社区  ›  Rob Wilkerson

用pig脚本调用restful服务

  •  0
  • Rob Wilkerson  · 技术社区  · 15 年前

    我正在编写一个pig脚本(我的第一个)来加载一个大的文本文件。对于该文本文件中的每个记录,需要将一个字段的内容发送到一个RESTful服务进行处理。无需评估或筛选任何内容。捕获数据,发送出去,脚本不需要任何返回。

    我假设这类功能需要一个UDF,但我还是个新手,不清楚 类型 我应该建立的功能。我的最佳猜测是 Store Function 因为数据最终会存储在某个地方,但我觉得得出这个结论所涉及的猜测量比我希望的要高。

    任何见解或指导都会受到赞赏。

    2 回复  |  直到 15 年前
        1
  •  2
  •   Romain    15 年前

    你看过吗 DBStorage 哪一个相似?

    everything = LOAD 'categories.txt' USING PigStorage() AS (category:chararray);
    ...
    STORE ordered INTO RestStorage('https://...');
    
        2
  •  0
  •   Community Mohan Dere    9 年前

    我从来没有找到过这个问题的答案,所以我决定换个方向。我正在使用pig来加载和解析大文件,但随后将我关心的每个记录流式传输到php,以获得pig似乎不具备干净处理能力的额外处理。

    它是 still not complete (read: there's a great big, very unhappy bug in the mix) 但是我认为这个概念是可靠的——只需要计算出实现细节。

    everything = LOAD 'categories.txt' USING PigStorage() AS (category:chararray);
    -- apply filter
    -- apply filter
    -- ...
    -- apply last filter
    ordered  = ORDER filtered_categories BY category;
    
    streamed = STREAM limited THROUGH `php -nF process_categories.php`;
    DUMP streamed;