DataEngineering(4)
-
[Spark] SparkSQL 개념 및 코드
SparkSQL Structured Data를 다루기 위해 Spark에서도 SQL문을 쓸 수 있게 했다. 1. Structured Data와 Unstructured Data의 차이점은 무엇이고 2. 왜 RDD가 아닌 Structured Data를 써야 하며 3. Spark에서 SQL문을 어떻게 쓸 수 있을까? 포스팅을 읽어가며 질문을 해소해보자. "본 포스팅은 패스트캠퍼스의 강의를 듣고, 정리한 자료임을 밝힙니다." Structured Data vs Unstructured Data Unstructured Data : free form - 로그 파일 - 이미지 말 그대로 free form. 자유로운 형식의 데이터다. 이미지가 될 수도 있고, 하나의 스트링이 될 수 있다. 이런 데이터들을 정제하여 Struc..
2022.05.06 -
[Spark] Reduction 개념 및 코드
Reduction 요소들을 모아서 하나로 합치는 작업을 말한다. 많은 Spark 연산들이 Reduction이라고 봐도 무방하다. * 파일 저장, collect() 등과 같이 Reduction이 아닌 액션도 존재. 코드로 실습해보자. conf 설정 import os import findspark findspark.init(os.environ.get('SPARK_HOME')) import pyspark from pyspark import SparkConf, SparkContext import pandas as pd import faulthandler faulthandler.enable() conf = SparkConf().setMaster('local').setAppName('my-RDD-transforma..
2022.05.01 -
[Spark] Key-Value RDD 개념 및 코드
Key-Value RDD (Key, Value) 쌍을 가지는 RDD로, Paris RDD라고 불리기도 한다. Single Value RDD와 Key-Value RDD는 활용 양상이 조금 다른데, 다음과 같다. Single Value RDD 예) 특정 단어 수 세기 Key-Value RDD 예) 특정 드라마가 받은 별점의 평균 RDD가 무엇인지 모르겠다면? https://mengu.tistory.com/27?category=932924 [Spark] RDD 개념 및 코드 RDD(Resilient Distributed Dataset)란? 직역하면 탄력적인 분산 데이터셋이다. 말 그대로 데이터를 클러스터에 분산하여 저장하며, 그런 데이터를 탄력적으로 이용(이슈 발생 시 과거 데이터로 돌아가기 mengu.tis..
2022.05.01 -
[Spark] RDD 개념 및 코드
RDD(Resilient Distributed Dataset)란? 직역하면 탄력적인 분산 데이터셋이다. 말 그대로 데이터를 클러스터에 분산하여 저장하며, 그런 데이터를 탄력적으로 이용(이슈 발생 시 과거 데이터로 돌아가기 등)할 수 있게 하는 데이터셋이다. 지금부터 RDD의 특징을 톺아보자. 1. 데이터의 분산 RDD는 다음과 같이 데이터를 여러 클러스터에 분산 저장하는 방식이다. 하지만 여러 클러스터에 흩어져있어도 하나의 파일처럼 사용하는 것이 가능하다. # 패키지를 가져오고 from pyspark import SparkConf, SparkContext import pandas as pd # Spark 설정 conf = SparkConf().setMaster("local").setAppName("ube..
2022.04.24