java(3)
-
[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] Transformations & Actions 함수
Spark Operation = Transformations + Actions Tranformations는 결괏값으로 새로운 RDD를 반환하고, Lazy Execution을 한다는 점이 특징이다. Actions는 결괏값을 연산하여 출력하거나 저장하며, Eager Execution을 한다는 점이 특징이다. Transformations와 Actions 함수들을 더 자세히 살펴보자. 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 faulth..
2022.05.01 -
[Spark] Apache Spark 개념 및 버전
Apache Spark에 대해 알아보자. Apache Spark란 빅데이터 처리를 위한 오픈소스 엔진(고속 분산처리)이다. 이미 아마존, 우버, 넷플릭스 등 다양한 기업에서 쓰이고 있다. Apache Spark 등장 배경 데이터가 쏟아지면서 3가지 문제를 맞이한다. 1. 데이터의 크기가 기하급수적으로 증가한다. 2. 데이터가 생성되는 속도가 어마어마하게 증가했다. 3. 데이터의 종류도 증가했다. 물론 데이터를 통해 인사이트를 얻고자 하는 사람 입장에선 좋을 수도 있다. 하지만 분석 전에 데이터를 처리하고 저장해야 하는 입장에선 문제가 아닐 수 없다. 데이터 크기가 증가하면 저장 비용이 증가하고, 생성되는 속도가 증가하면 저장하는 속도가 따라잡지 못해 알맞게 처리할 시간을 확보하지 못한다. 종류가 증가하면..
2022.04.23