[스파크 완벽 가이드] 9. 데이터소스 9.1 데이터소스 API 구조 특정 포맷을 읽고 쓰는 방법을 알아보기 전에 데이터소스 API 전체적인 구조를 알아보자. 9.1.1 읽기 API 구조 dataframe.write.format("csv") .option("mode", "OVERWRITE") .option("dateFormat", "y...
[스파크 완벽 가이드] 8. 조인 8.1 조인 표현식 스파크는 왼쪽과 오른쪽 데이터셋에 있는 하나 이상의 키값을 비교하고 왼쪽 데이터셋과 오른쪽 데이터셋의 결합 여부를 결정하는 조인 표현식의 평가 결과에 따라 2개의 데이터셋을 조인합니다. 일반적인 RDB의 JOIN과 유사한 방식 8.2 조인 타입 내부 조인(inner join) : ...
[스파크 완벽 가이드] 7. 집계 연산 7.1 집계 함수 ` org.apache.Spark.sql.functions` 패키지에서 제공되는 함수를 찾아볼수 있음. 7.1.1 count count는 액션이 아닌 트랜스포메이션으로 동작 지연 연산이 아니라 즉각 결과를 처리한다는 의미 import org.a...
[스파크 완벽 가이드] 6. 다양한 데이터 타입 다루기 데이터 타입들 불리언 타입 수치 타입 문자열 타입 date와 timestamp 타입 null 값 다루기 복합 데이터 타입 사용자 정의 함수 6.1 API는 어디서 찾을까? DataFrame(DataSet) 메서드 DataFrame은 Row 타입을 가진...
[스파크 완벽 가이드] 5. 구조적 API 기본 연산 5.1 스키마 스키마는 DataFrame의 컬럼명과 데이터 타입을 정의(데이터소스로부터 얻거나 직접 정의) 스키마는 여러 개의 StructField 타입 필드로 구성된 StructType 객체 이름, 데이터 타입, 컬럼의 nullable 여부를 가짐. import org.apach...
[스파크 완벽 가이드] 4. 구조적 API 개요 4.1 DataFrame과 Dataset 2가지 모두 잘 정의된 로우와 컬럼을 가지는 분산 테이블 형태의 컬렉션. 각 컬럼은 다른 컬럼과 동일한 수의 로우를 가져야 함.(값이 없는 경우 null일수는 있음) 4.2 스미카 DataFrame의 컬럼명과 데이터 타입을 정의 스키마는 데이...
[스파크 완벽 가이드] 3. 스파크 기능 둘러보기 3.1 스파크의 기능 3.2 Dataset : 타입 안정성을 제공하는 구조적 API 자바와 스칼라의 정적 데이터 타입 코드를 지원하기 위해 고안된 구조적 API 이는 타입 안정성을 지원하고, 동적 타입 언어인 파이썬과 R에서는 사용할수 없음. case class Flight(DEST_...
[스파크 완벽 가이드] 2. 스파크 간단히 살펴보기 2.1 스파크의 기본 아키텍쳐 2.1.1 스파크 애플리케이션 driver 프로세스와 executor 프로세스로 구성됨. driver 프로세스는 zeppelin 같은 BI 툴이 될수도 있고, spring application같은것이 될수도 있음. 로컬 모드 위 그림과 같이 클러스터...
스파크 시작하기 곧 업무에서 스파크를 사용해야 해서 스파크를 재대로 공부해봐야겠다고 생각했다. 그래서 일단 local 환경에서 spark를 설치하고, 간단한 작업들을 해보려고 한다. 1. 스파크 설치 2020 m1 osx 를 기준으로 작성되었음을 알려드립니다. # java 설치 arch -arm64 brew install ope...
9. 리액티브 애플리케이션 테스트하기 테스트 도구에 대한 요구사항 StepVerifier를 사용해 Publisher를 테스트할 때의 핵심 고급 StepVerifier 사용 시나리오 웹플럭스 테스트를 위한 툴 세트 9.1 리액티브 스트림을 테스트하기 어려운 이유 대규모 시스템에 많은 수의 클래스가 포함된 수많은 컴포넌트가 ...