728x90
반응형

RDD 3

스파크 튜토리얼 - (6) 데이터프레임

DataFrame DataFrame은 테이블처럼 구조화된 데이터로, 스키마를 표현할 수 있는 RDD의 확장 구조체입니다. python의 pandas나 SQL을 써본사람이라면, 이해가 빠를것입니다. Row DataFrame의 행을 Row라고 합니다.. Row들이 곧 하나의 레코드가 되고, Row들이 RDD를 내장함으로서, 효과적으로 데이터를 접근할 수 있게 해줍니다. 데이터 지난번 포스팅에서 사용했던 json데이터를 사용하겠습니다. 다운로드 링크는 아래에 있습니다. DataFrame 생성 데이터프레임은 크게 두가지 방법으로 생성할 수 있습니다. 스파크 세션을 통해 직접 생성 SQL컨텍스트의 테이블을 통해 생성 두가지 방법 모두 스파크 내부에서의 동작은 크게 다르지 않습니다. 각각의 방법을 살펴보도록 하겠습..

스파크 튜토리얼 - (4) 페어 RDD

페어 RDD 페어 RDD란 key-value쌍으로 이루어진 RDD를 말합니다. 파이썬 에서는 Tuple로 이뤄진 RDD가 곧 페어 RDD가 됩니다. 페어 RDD 생성 먼저 간단하게 parallelize메소드를 사용해 int key-value페어로 이뤄진 페어RDD를 생성하겠습니다. In [46]: examplePairRDD = sc.parallelize([(1, 3), (1, 5), (2, 4), (3, 3), (4, 8), (4, 2), (3, 1)]) examplePairRDD Out[46]: ParallelCollectionRDD[77] at parallelize at PythonRDD.scala:194 페어 RDD 트랜스포메이션 페어 RDD는 기본 RDD에서 사용 가능한 메소드들은 모두 사용할 수..

스파크 튜토리얼 - (3) RDD

RDD RDD는 Resilient Distributed Dataset의 약자입니다. 직역하면 탄력 분산 데이터셋이 되겠습니다. 이는 분산되어 존재하는 데이터들의 모임, 즉 클러스터에 분배되어 있는 데이터들을 하나로 관리하는 개념이라고 생각하면 편할 것 같습니다. 스파크의 모든 데이터 타입들은 RDD를 기반으로 만들어져 있고, 데이터끼리의 연산들은 RDD의 연산으로 이루어져 있습니다. RDD는 HDFS의 파일과 같이 변경이 불가능한, 즉 쓰기가 불가능한 데이터입니다. RDD 연산 RDD는 두가지 연산으로 이루어져 있습니다. Transformation Action Transformation 트랜스포메이션은 RDD끼리의 연산입니다. 이전 포스팅에서 사용했던 filter메소드 역시 트랜스포메이션의 일종입니다. ..

728x90
반응형