2017-08-17 1 views
0

Ich habe folgende PTables,Iterieren über pTable in Crunch

PTable<String, String> somePTable1 = somePCollection1.parallelDo(new SomeClass(), 
    Writables.tableOf(Writables.strings(), Writables.strings())); 

PTable<String, Collection<String>> somePTable2 = somePTable1.collectValues(); 

Für somePTable2 oben beschrieben, ich möchte eine neue Datei erstellen, für jeden Datensatz in somePTable2, Gibt es eine Möglichkeit somePTable2 iterieren so dass ich Auf den Datensatz zugreifen. Ich weiß, dass ich das DoFn auf somePTable2 anwenden kann, aber ist es möglich, pipeline.write() in DoFn anzuwenden?

Antwort

0

dieses Versuchen Sie, Ihre Liste zu speichern, wie

somePTable2.values().write() 

ist, wenn Sie in der Sammlung in Ihrem pTable einen Datensatz für jedes Element erzeugen möchten, müssen Sie eine DoFn brauchen gelten und für jedes Element einen Datensatz emittieren in der Sammlung, bevor Sie es schreiben.