ComeçarComece gratuitamente

Mais truques do ID

Depois de definir um processo Spark, é provável que você queira usá-lo muitas vezes. Dependendo das suas necessidades, você pode querer iniciar o IDs em um determinado valor para que não haja sobreposição com execuções anteriores da tarefa do Spark. Esse comportamento é semelhante ao que IDs teria em um banco de dados relacional. Você recebeu a tarefa de garantir que a saída do IDs de uma tarefa mensal do Spark comece com o valor mais alto do mês anterior.

A sessão spark e dois DataFrames, voter_df_march e voter_df_april, estão disponíveis em seu espaço de trabalho. A biblioteca pyspark.sql.functions está disponível sob o pseudônimo F.

Este exercício faz parte do curso

Limpeza de dados com o PySpark

Ver Curso

Instruções de exercício

  • Determine o maior ROW_ID em voter_df_march e salve-o na variável previous_max_ID. A declaração .rdd.max()[0] obterá o máximo de ID.
  • Adicione uma coluna ROW_ID a voter_df_april começando com o valor de previous_max_ID + 1.
  • Mostre o ROW_ID's de ambos os quadros de dados e compare.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Determine the highest ROW_ID and save it in previous_max_ID
____ = ____.select('ROW_ID').rdd.max()[0] + 1

# Add a ROW_ID column to voter_df_april starting at the desired value
voter_df_april = ____.withColumn('ROW_ID', ____ + ____)

# Show the ROW_ID from both DataFrames and compare
____.select('ROW_ID').show()
____
Editar e executar código