Spark
-
Helm 으로 Spark 구축하기Spark 2023. 12. 15. 06:39
- 목차 함께 보면 좋은 글. https://westlife0615.tistory.com/407 KinD 알아보기. - 목차 소개. KinD 는 "카인드" 라고 발음되며, 로컬 머신에서 쿠버네티스를 간편하게 실행할 수 있는 도구입니다. KinD 는 Kubernetes in Docker 의 약자이구요. Docker 를 활용하여 쿠버네티스 환경을 구성 westlife0615.tistory.com https://westlife0615.tistory.com/408 Helm 알아보기 - 목차 소개. Helm 은 쿠버네티스를 위한 패키지 매니저입니다. npm, pip 등의 패키지 매니저들이 이미 만들어진 라이브러리들을 추가/삭제할 수 있는 기능을 제공하듯이, Helm 은 미리 설정된 쿠버네 westlife0615...
-
Spark Driver Program 알아보기Spark 2023. 12. 6. 06:19
- 목차 소개. Spark Driver Program 에 대해서 알아보려고 합니다. 아래의 이미지는 Spark Driver Program 와 Spark Cluster 사이의 관계를 나타낸 그림입니다. Driver Program 은 실제 Spark 프로그램 코드가 작성된 실행 프로세스입니다. 아래와 같은 형식으로 작성된 Spark 프로그램 코드가 있다고 했을 때, 아래 프로그램이 실행된 Process 가 Driver Program 이 됩니다. import org.apache.spark.api.java.JavaRDD; import org.apache.spark.api.java.JavaSparkContext; import org.apache.spark.SparkConf; public class SparkRDD..
-
[Spark] SparkSQL CSV 파일 Aggregation 하기Spark 2023. 10. 3. 22:01
- 목차 소개. Spark 를 학습하기 위해서 간단한 예시를 기록해두려고 합니다. MovieRating 이라는 csv 파일을 읽어들이고 Aggregation 을 진행합니다. MovieRating.csv 파일은 아래 Web Link 에서 제공되는 영화 평점과 관련된 데이터셋입니다. https://raw.githubusercontent.com/prasertcbs/basic-dataset/master/Movie%20Ratings.csv 아래와 같은 형식으로 작성된 csv 파일입니다. UserId,MovieId,Rating,Timestamp 1,68646,10,1381620027 1,113277,10,1379466669 2,454876,8,1394818630 2,790636,7,1389963947 2,81671..
-
[Spark] Spark Lazy Evaluation 알아보기Spark 2023. 5. 22. 07:52
- 목차 Transformation 과 Action. Spark Application 은 Transformation 과 Action 들로 구성됩니다. Transformation 은 filter, select, groupBy, orderBy 등이 있구요. 그리고 Action 은 show, write, collect, agg 등이 있습니다. 이들 각각은 이름에서도 알 수 있듯이, Transformation 은 데이터를 변형하는 Operation 이며, Action 은 새로운 Dataset 을 생성하는 Operation 입니다. 여기서 Action 의 내부적인 동작을 이해하는 것이 중요합니다. Action 을 통해서 실질적인 Lazy Evaluation 이 수행되기 때문이죠. Action 을 이해하기 예시를 ..
-
[SparkML] Kaggle EDA + Regression 구현하기Spark/SparkML 2023. 2. 24. 06:17
- 목차 소개. 아래 주소는 Kaggle EDA + Regression 문제를 소개하는 페이지의 웹 링크입니다. https://www.kaggle.com/code/hely333/eda-regression EDA + Regression Explore and run machine learning code with Kaggle Notebooks | Using data from Medical Cost Personal Datasets www.kaggle.com 위 문제에서는 메디컬 데이터가 제공됩니다. 메디컬 데이터는 환자의 상태 정보와 의료비용 데이터로 구성됩니다. 목표는 환자의 상태 데이터를 기반으로 의료비용을 예측하는 Regression 모델을 구축하는 것입니다. 데이터 분석하기. import os from..
-
[SparkML] Kaggle Stars Classification 구현하기 (Logistic Regression)Spark/SparkML 2023. 2. 21. 15:36
- 목차 소개. 아래 링크는 Kaggle 의 Stars Classification 관련한 웹 링크입니다. https://www.kaggle.com/code/ybifoundation/stars-classification/notebook Stars Classification Explore and run machine learning code with Kaggle Notebooks | Using data from No attached data sources www.kaggle.com 별의 특성들로부터 항성을 분류하는 Classification 을 구현해야합니다. 항성분류법은 O,B,A,F,G,K,M 등급으로 분류되는 표현법이구요. 별의 크기, 밝기, 온도 등의 feature 들로부터 항성을 분류합니다. 제공되..
-
[Spark] RDD 로 숫자 처리하기Spark 2023. 1. 19. 06:29
- 목차 소개. 개인적인 스파크 학습을 위하여 RDD 처리에 대한 여러가지 예시를 작성해보려고 합니다. java version 11, spark 3.2 버전을 사용할 예정입니다. build.gradle 에 해당 버전의 spark-core 모듈을 설치합니다. implementation 'org.apache.spark:spark-core_2.12:3.2.0' Number 처리하기. 아래 코드는 Spark 로 숫자를 처리하는 간단한 예시입니다. input 데이터인 1,2,3,4,5 라는 List 를 1씩 증가시키는 예시입니다. package org.example; import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaRDD; impor..
-
[Spark] Docker 로 Spark Cluster 구현하기 ( Standalone Mode )Spark 2022. 7. 18. 04:40
- 목차 소개. Docker 로 Spark Cluster 를 실행시키는 방법에 대해서 알아보고자 합니다. 이러한 방식으로 Spark Master Node 와 여러개의 Worker Node 들을 구동시키는 방식을 Standalone Mode 라고 합니다. 이번 글에서는 Standalone 방식의 Deployment 를 설명하며, Spark 클러스터 환경에서 여러가지 테스트를 진행하기 위해서 2개 이상의 Worker 를 실행시키는 것이 목표입니다. Docker Yaml. 먼저 docker-compose.yaml 파일을 생성합니다. 저는 /tmp/ 디렉토리 하위에 해당 yaml 파일을 생성하였습니다. 이미지는 bitnami/spark:3.2.4 이미지를 사용합니다. < spark-docker-compose.y..
-
[SparkML] Linear Regression 구현하기 ( Kaggle )Spark/SparkML 2021. 12. 5. 21:43
- 목차 소개. 아래 링크는 kaggle 의 Conf. Interval for Inferences 의 Linear Regression 관련 문제입니다. https://www.kaggle.com/code/abdulazizdusbabaev/conf-interval-for-inferences/notebook Conf. Interval for Inferences Explore and run machine learning code with Kaggle Notebooks | Using data from Linear Regression www.kaggle.com SparkML 을 기반으로 Linear Regression 을 구현한 예시코드입니다. import os from pyspark.ml.feature impor..
-
[SparkML] VectorAssembler 알아보기Spark/SparkML 2021. 12. 4. 16:57
- 목차 소개. SparkML 에서 VectorAssembler 는 feature 들을 하나의 Vector 로 만들어주는 모듈입니다. Vector 와 Assemble 은 이름 그대로 feature 들을 모아 하나의 Vector 를 만듭니다. Assemble 이 "모으다", "집합시키다", "조합하다" 뜻을 가지듯 말이죠. VectorAssembler 를 통해서 DataFrame 의 Column 들은 하나의 Vector 됩니다. 아래 예시는 Boolean, Integer, Double 타입의 칼럼 3개를 하나의 Vector 로 만드는 예시입니다. from pyspark.ml.feature import VectorAssembler from pyspark.sql import SparkSession from p..