DataFrame 사용하기
Spark의 핵심 데이터 구조는 Resilient Distributed Dataset(RDD)입니다. RDD는 데이터를 클러스터의 여러 노드로 분산해 Spark가 성능을 발휘하도록 해 주는 저수준 객체예요. 하지만 RDD를 직접 다루기는 어렵기 때문에, 이 강의에서는 RDD 위에 구축된 추상화인 Spark DataFrame을 사용합니다.
Spark DataFrame은 SQL 테이블(열에는 변수, 행에는 관측값이 있는 테이블)처럼 동작하도록 설계되었어요. 이해하기 쉬울 뿐 아니라, DataFrame은 RDD보다 복잡한 연산에 더 최적화되어 있습니다.
열과 행을 수정하고 결합하기 시작하면 같은 결과에 도달하는 방법이 여러 가지지만, 어떤 방법은 훨씬 오래 걸리기도 해요. RDD를 사용할 때는 쿼리를 어떻게 최적화할지 데이터 과학자가 직접 결정해야 하지만, DataFrame 구현에는 이러한 최적화가 상당 부분 내장되어 있습니다!
Spark DataFrame을 사용하려면 먼저 SparkContext에서 SparkSession 객체를 만들어야 합니다. SparkContext는 클러스터와의 연결이고, SparkSession은 그 연결을 다루는 인터페이스라고 생각하시면 됩니다.
이 강의의 나머지 과정에서 여러분의 작업 공간에는 spark라는 이름의 SparkSession이 준비되어 있다는 점을 기억하세요!
다음 중 RDD에 비해 Spark DataFrame이 가지는 장점은 무엇인가요?
이 연습은 강의의 일부입니다
