이 장에서는 스파크에서 사용가능한 여러 유형의 집계 연산에 대해 알아보았다. 그룹화, 윈도우함수, 롤업, 큐브도 알아보았다. 집계 연산¶집계(aggregation)은 빅데이터 분석의 초석입니다. 집계를 수행하려면 key와 group을 지정하고, 하나 이상의 칼럼을 변환하는 방법을 지정하는 집계함수를 사용합니다. Spark는 모든 데이터 타입을 다루는 것 외에도 다음과 같은 그룹화 데이터 타입을 생성할 수 있습니다. 가장 간단한 형태의 그룹화는 select 구문에서 집계를 수행해 DataFrame의 전체 데이터를 요약한다. group by는 하나 이상의 키를 지정할 수 있고, 값을 가진 컬럼을 변환하기 위해 다른 집계함수를 사용할 수 있다. 윈도우(window)는 하나이상의 키를 지정할 수 있고, 값을 가..
다양한 데이터 타입 다루기¶이 장에서는 스파크의 구조적 연산에서 가장 중요한 내용인 표현식을 만들고, 다양한 데이터 타입을 다루는 방법에 대해 알아봅시다. 불리언 타입 수치 타입 문자열 타입 date와 timestamp 타입 null값 다루기 복합 데이터 타입 사용자 정의 함수 API는 어디서 찾을끼?¶나중에 버전이 바뀌고 바뀌어도, Spark의 데이터 변환용 함수를 찾기 위해 핵심적으로 다뤄야할 부분은 다음과 같습니다. DataFrame(Dataset) 메서드 Column Method In [77]: df = spark.read.format("csv").option("header", "true").option("inferSchema", "true").load("./data/retail-data/by-d..
구조적 API 기본 연산¶DataFrame은 Row 타입의 레코드(Record)와 각 레코드에 수행할 연산 표현식을 나타내는 여러 컬럼(Column)으로 구성됩니다. 스키마(Schema)는 각 컬럼명과 데이터타입을 정의합니다. DataFrame의 파티셔닝(Partitioning)은 DataFrame이나 Dataset이 클러스터에서 물리적으로 배치되는 형태를 정의합니다. 파티셔닝 스키마(Partitioning Schema)는 파티션을 배치하는 방법을 정의합니다. 파티셔닝의 분할 기준은 특정 컬럼이나 비결정론적인 값을 기반으로 설정할 수 있습니다. 우선 DataFrame을 생성합니다. In [4]: df = spark.read.format("json").load("./data/flight-data/json/..
구조적 API: DataFrame, SQL, Dataset¶ 구조적 API(Structured API)는 비정형 로그파일로부터 반정형 CSV파일, 정형적인 Parquet 파일까지 다양한 데이터를 처리할 수 있다. 구조적 API에는 다음과 같은 3가지 분산 컬렉션 API가 있습니다. Datasets DataFrames SQLtables and Views 배치(Batch)와 스트리밍(Streaming) 처리에 구조적 API를 사용할 수 있습니다. 구조적 API를 활용하면 배치 작업을 스트리밍 작업으로 손쉽게 변환할 수 있습니다. 구조적 API는 데이터 흐름을 정의하는 기본 추상화 개념입니다. 타입형, 비타입형 API 의 개념과 차이점 핵심 용어 스파크가 구조적 API의 데이터 흐름을 해석하고 클러스터에서 실..
3장. 스파크 기능 둘러보기¶이 장에서는 다음과 같은 내용을 설명합니다. spark-submit 명령으로 운영용 어플리케이션 실행 Dataset: 타입 안정성(typr-safe, 타입 세이프)를 제공하는 구조적 API 구조적 스트리밍 머신 러닝과 고급 분석 RDD : 스파크의 저수준 API SparkR 서드파티 패키지 에코 시스템 3.1. 운영용 애플리케이션 실행하기¶스파크를 사용하면 빅데이터 프로그램을 쉽게 개발할 수 있습니다.spark-submit 명령을 사용해 대화형 셸에서 개발한 프로그램을 운영용 애플리케이션으로 쉽게 전환할 수 있습니다. spark-submit 명령은 애플리케이션 코드를 클러스터에 전송해 실행시키는 역할을 합니다. 실행에 필요한 자원과 실행방식, 다양한 옵션을 지정할 수 있습니다..
- Total
- Today
- Yesterday
- 언제나 함께해요
- 참고 링크
- 자스계의백과사전
- 주피터노트북 설치
- 스프링 프레임워크 핵심 기술
- 배포
- 크론탭
- vim
- 자바인강
- 환경세팅
- AWS
- CKA
- linter
- 자바 인강이 듣고 싶다면 => https://bit.ly/3ilMbIO
- 쉘스크립트
- EC2
- 자바 인강
- 쿠버네티스
- 패스트 캠퍼스
- 파이참
- hot
- 자바
- https://cupjoo.tistory.com/96
- django
- 디비
- 세션불일치
- pycharm
- 유용한웹사이트
- 마크다운
- 패스트캠퍼스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |