Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Interpretando a Pcollection

Boa tarde, pessoal.

Tendo em vista que o SDK do Apache Beam lê linha a linha, posso dizer que, para as duas primeiras linhas, o seguinte esquema está correto?

0|2015-11-08|0.0|230010|Abaiara|CE|63240-000|-7.3364|-39.0613

1|2015-12-27|0.0|230010|Abaiara|CE|63240-000|-7.3364|-39.0613

1 - dengue armazena o valor '0|2015-11-08|0.0|230010|Abaiara|CE|63240-000|-7.3364|-39.0613'

2 - dengue armazena o valor [0','2015-11-08','0.0','230010','Abaiara','CE,63240-000','-7.3364','-39.0613]

3 - dengue armazena o valor {'id': '2971', ..., 'longitude': '-38.3913'}

4 - dengue imprime o valor armazenado

5 - dengue armazena o valor '1|2015-12-27|0.0|230010|Abaiara|CE|63240-000|-7.3364|-39.0613'

6 ....

7 ...

Ou seja, uma pcollection não é nada mais do que apenas uma variável que tem seu valor constantemente substituído durante a execução do pipeline?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Agradeço desde já!

1 resposta
solução!

Olá, Gustavo! Tudo bem com você?

Peço desculpa pela demora em responder o seu tópico.

Com relação à sua dúvida, a PCollection no Apache Beam não é exatamente uma variável que tem seu valor constantemente substituído durante a execução do pipeline. Na verdade, a PCollection é uma coleção de dados distribuída que é imutável, o que significa que, uma vez criada, você não pode modificar os dados. Em vez disso, você pode aplicar transformações aos dados para criar uma nova PCollection.

No seu exemplo, cada linha de dados é lida como uma string e então transformada em uma lista ou um dicionário, dependendo da transformação que você está aplicando. Essas transformações são aplicadas a cada elemento da PCollection.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.