簡體   English   中英

Apache 光束列表到 PCollection

[英]Apache beam list to PCollection

我的輸入是 json 的列表,我想要一個多元素 PCollection。 這是我的代碼:

def parse_json(data):
    import json
    for i in json.loads(data):
        return i
data = (p
    | "Read text" >> beam.io.textio.ReadFromText(f'gs://{bucket_name}/not_processed/2020-06-08T23:59:59.999Z__rms004_m1__not_sent_msg.txt')
    | "Parse json" >> beam.Map(parse_json))

問題是當列表由 2 個元素組成時,我只得到列表的第一個元素。

在此處輸入圖像描述

我如何實現這一目標?

我發現。

在 Apache Beam 中有一個名為 ParDo 的 function 就是為了這個。

def parse_json(data):
    import json
    return json.loads(data)

data = (p
    | "Read text" >> beam.io.textio.ReadFromText(f'gs://{bucket_name}/not_processed/2020-06-08T23:59:59.999Z__rms004_m1__not_sent_msg.txt')
    | "Parse json" >> beam.ParDo(parse_json))

暫無
暫無

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

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