반응형

Data Engineering/Spark 10

[Spark] 스파크 조인

8.1 조인 표현식 #python3 DF.join( JoinDF , JoinExpression, (joinType) ) - JoinDF : 조인 대상 - JoinExpression : 조인 표현식(조건) - joinType : 조인 타입( 생략가능 / defaultValue : inner ) 왼쪽, 오른쪽 데이터 셋에 있는 하나 이상의 키값을 비교하고 왼쪽 데이터 셋과 오른쪽 데이터 셋의 결합 여부를 결정하는 조인 표현식의 평가 결과에 따라 두 개의 데이터 셋을 조인 가장 많이 사용하는 조인식은 동등 조인(equi-join) 더 복잡한 조인 정책도 지원함 8.2 조인 타입 내부 조인(inner join) 왼쪽, 오른쪽 데이터 셋에 키가 있는 로우를 유지 외부 조인(outer join) 왼쪽이나 오른쪽 데..

[Spark] 스파크 집계연산 정리 1

집계를 수행하려면 키나 그룹을 지정하고 하나 이상의 컬럼을 변환하는 방법을 지정하는 집계함수를 사용 SELECT 가장 간단한 형태의 그룹화, 집계를 수행해 데이터 프레임의 전체 데이터를 요약 GROUP BY 하나 이상의 키를 지정, 값을 가진 컬럼을 변환하기 위해 다른 집계 함수 사용 WINDOW 하나 이상의 키를 지정할수 있음, 값을 가진 컬럼을 변환하기 위해 다른 집계 함수 사용 가능. 하지만 함수의 입력으로 사용할 로우는 현재 로우와 연관성이 있어야 함 GROUP SET 서로 다른 레벨의 값을 집계할 때 사용. SQL, 데이터프레임의 롤업, 큐브 사용 가능 ROLL UP 하나 이상의 키 지정 가능, 컬럼 변환하는데 다른 집계 함수 사용하여 계층적 요약된 값 구함

[ Spark ] 스파크 간단 스터디 6

Chapter 12. RDD¶ 저수준 API 이며, 분산형 공유변수이다 12.1 저수준 API 이란¶ 스파크에는 두 종류의 저수준 API 존재 분산 데이터 처리를 위한 RDD 분산형 공유 변수를 배포하고 다루기 위한 브로드 캐스트 변수, 어큐뮬레이터 12.1.1 저수준 API 는 언제 사용할까¶ 고수준 API 에서 제공하지 않는 기능이 필요한 경우 RDD를 사용해 개발된 기존 코드를 유지해야 하는 경우 사용자가 정의한 공유 변수를 다뤄야 하는 겨우 --> 위와 같은 상황에서 저수준 API 사용해야함 스파크의 모든 워크로드는 저수준 기능을 사용하는 기초적인 형태로 컴파일되므로 이를 이해하는 것은 큰 도움이 됨 DF 트랜스포메이션 호출시, 다수의 RDD 트랜스포메이션으로 변환 저수준 API 는 세밀한 제어 ..

[ Spark ] 스파크 간단 스터디 5

Chapter 11. Dataset¶ 구조적 api 의 기본 데이터 타입 데이터프레임은 row 타입의 dataset 이다. 자바 가상 머신을 사용하는 언어인 스칼라 와 자바 에서만 사용할 수 있다. 타입형 api 라고 불린다 데이터프레임 api 를 사용할 때 string, integer 데이터 타입의 객체를 생성하지 않지만 스파크는 row 객체를 변환해 데이터를 처리 스칼라에서 데이터프레임은 row 타입의 dataset 을 의미함 인코더 : 도메인별 특정 객체 T를 스파크의 내부 데이터 타입으로 매핑하는 시스템 DatasetAPI 를 사용하면 스파크는 데이터셋에 접근할 대마다 row 포맷이 아닌 사용자 정의 데이터 타입으로 변환 이 변환 작업은 느리지만 사용자에게 더 많은 유연성을 제공함 인코더의 역할¶..

[ Spark ] 스파크 간단 스터디 4

Chapter 9. 데이터 소스¶ 스파크에는 6가지 핵심 데이터 소스와 커뮤니티에서 만든 수백가지 외부 데이터 소스 존재 핵심 데이터 소스 : CSV, JSON, PARQUET, ORC, JDBC/ODBC, 일반 TXT 외부 데이터 소스 : 카산드라, HBASE, MONGODB, AWS REDSHIFT, XML, 기타 소스 9.1 데이터 소스 API 구조¶ DataFrameReader.format(...).option("key", "value").chema(...).load() 모든 데이터 소스를 읽을 때 위와 같은 형식 사용 format 메서드 : 선택적으로 사용할수 있으며 parquet 가 기본 포멧 option 메서드 : 키-값 쌍으로 파라미터 설정 가능 schema 메서드 : 데이터 소스에서 스키..

[Spark] 스파크 간단 스터디 3

CHAPTER 8. 조인¶ 다양한 데이터셋 조합으로 조인은 거의 모든 스파크 작업에 필수 8.1 조인표현식¶ 키값을 비교하여 데이터셋과 오른쪽 데이터 셋의 결합여부를 결정하는 조인 표현식의 평가 결과에 따라 두개의 데이터 셋을 조인 가장 많이 사용하는 조인 : 동등 조인(왼.오른쪽 데이터셋에 지정된 키가 동일한지 비교) 일치하는 키가 없는 로우는 조인에 포함시키지 않음 복합 데이터 타입을 조인에 사용할 수 있음 8.2 조인 타입¶ 데이터셋에 어떤 데이터가 있어야 하는지 결정 In [1]: //스칼라 코드 val person = Seq( (0, "Bill Chambers", 0, Seq(100)), (1, "Matei Zaharia", 1, Seq(500, 250, 100)), (2, "Michael Ar..

[Spark] 스파크 간단 스터디 2

1. 스파크 운영용 애플리케이션 Spark-submit 명령을 사용해 대화형 셀에서 개발한 프로그램을 운영용 애플리케이션으로 쉽게 전환 가능 해당 명령은 애플리케이션 코드를 클러스터에 전송해 실행시키는 역할 2. Dataset 타입 안정성을 제공하는 구조적 api 정적 타입 코드를 지원하기 위해 고안된 스파크의 구조적 api 타입안정성을 지원하며 동적 타입 언어인 파이썬과 R 에선 사용 불가 3. 구조적 스트리밍 스트림 처리용 고수준 api 배치모드의 연산을 스트리밍 방식으로 실행할 수 있으며, 지연 시간을 줄이고 증분 처리할 수 있음 배치 처리용 코드를 일부 수정하여 스트리밍 처리를 수행하고 값을 빠르게 얻을 수 있는 장점 존재 스트리밍은 트리거가 실행된 다음 데이터를 갱신하게될 인메모리 테이블에 데이..

[Spark] 스파크에 대한 간단 스터디 1

1. 스파크란 스파크는 통합 컴퓨팅 엔진이며, 클러스터 환경에서 데이터를 병렬로 처리하는 라이브러리 집합. 널리 쓰이는 언어(파이썬, 자바,스칼라,R) 을 지원하며 SQL 뿐만 아니라 스트리밍, 머신러닝에 이르기까지 넓은 범위의 라이브러리를 제공한다. 2. 스파크의 특징 HDFS 사용 – 하둡의 파일시스템 기반 동작 직관적 이해 – 스칼라 기반 최소화 코드로 작성 RDD – RDD 단위로 데이터 연산을 수행 3. 스파크 철학 1) 통합 간단한 데이터 읽기부터 SQL 처리, 머신러닝 그리고 스트림 처리에 이르기까지 다양한 데이터 분석작업을 같은 연산 엔진과 일관성있는 API 로 수행할 수 있도록 설계. 2) 컴퓨팅 엔진 통합관점의 중시하면서 기능의 범위를 컴퓨팅 엔진으로 제한, 그 결과 저장소 시스템의 데..

반응형