시작하기무료로 시작하기

더 다양한 ID 처리 요령

한 번 Spark 처리를 정의해 두면 여러 번 재사용하게 될 가능성이 큽니다. 필요에 따라 이전에 실행한 Spark 작업과 ID가 겹치지 않도록 특정 값에서부터 ID를 시작하고 싶을 수 있어요. 이 동작은 관계형 데이터베이스에서 ID가 동작하는 방식과 비슷합니다. 이번 과제는 매월 실행되는 Spark 작업에서, 이전 달의 최고값 다음부터 ID가 시작되도록 보장하는 것입니다.

spark 세션과 두 개의 DataFrame voter_df_march, voter_df_april이 작업 공간에 준비되어 있습니다. pyspark.sql.functions 라이브러리는 별칭 F로 사용할 수 있어요.

이 연습은 강의의 일부입니다

PySpark로 데이터 정제하기

강의 보기

연습 안내

  • voter_df_march에서 가장 높은 ROW_ID를 구해 변수 previous_max_ID에 저장하세요. .rdd.max()[0] 구문을 사용하면 최대 ID를 얻을 수 있어요.
  • voter_df_aprilROW_ID 열을 추가하고 시작값을 previous_max_ID + 1로 설정하세요.
  • 두 DataFrame에서 ROW_ID를 출력해 비교하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# 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()
____
코드 편집 및 실행