본문 바로가기
728x90

BigData/Spark & Spark Tuning33

[Spark] PySpark read & write + partitioning 간단한 예시문제 python read&write 과 partition에 대해 아래의 링크에서 받은 파일로 다음과 같은 문제를 만들었습니다. https://github.com/udacity/data-analyst/blob/master/projects/bike_sharing/201508_trip_data.csv 혹은 아래의 링크에서 201508_trip_data.csv 파일 다운로드 후 Spark에서 Data Read https://github.com/Spidyweb-3588/python_skillup/tree/main/201508data 문법적인 자유도에 관한 문제를 보시려면 아래의 링크를 참조해주세요 2022.03.26 - [BigData/Spark & Spark Tuning] - [Spark] 스파크의 문법적 자유도,.. 2022. 8. 23.
[Spark] 스파크의 문법적 자유도, 스키마 조작, dummy 생성 이번 포스트에서 다룰 것 스파크의 다양한 문법을 소개 스키마를 정의하여 dataframe 만들기 dummy데이터 생성 아래의 링크에서 201508_trip_data.csv 파일 다운로드 후 Spark에서 Data Read https://github.com/Spidyweb-3588/python_skillup/tree/main/201508data read&write + 파티션 조작에 관한 간단한 문제예시를 보시려면 아래의 링크를 참조해주세요. 2022.08.23 - [BigData/Spark & Spark Tuning] - [Spark] PySpark read & write + partitioning 간단한 예시문제 1. Start_Station,End_Station 컬럼을 4가지 방법으로 조회 #1. cs.. 2022. 3. 26.
[Spark] Install PySpark with PiP & 파일 읽고, 쓰기 실습 이번 포스트는 예전에 포스트했었던 spark를 설치하여 jupyter notebook 환경에서 pyspark를 사용하는 것보다 활용하기 쉬운 pip를 통해 pyspark를 다운로드하고 확인하고, 실습해보겠습니다. 예전 포스트 링크 2021.02.17 - [BigData/Spark & Spark Tuning] - [PySpark] Spark 환경 설정 with Anaconda(Jupyter Notebook) Python(Pyspark Standalone mode) on windows [PySpark] Spark 환경 설정 with Anaconda(Jupyter Notebook) Python(Pyspark Standalone mode) on windows 이번 포스트는 windows 10에 jupyter n.. 2022. 2. 24.
[Spark] Spark 개요, Spark란 무엇이고 어떤 역할을 하는가? Spark Core, Pandas와 비교 Spark를 공부하기에 앞서 선행 되면 좋을 법한 것들 1. 하둡과 빅데이터 개념 https://spidyweb.tistory.com/239?category=910416 [Hadoop] 하둡이란? 하둡 에코시스템이란? hadoop, hadoop eco-system 개념 1.Hadoop 이란? -하둡은 분산 데이터 처리의 공통 플랫폼입니다. -하둡을 3가지로 나눈다면 1) 데이터 저장의 분산 파일 시스템(Distributed file system) HDFS 2) 데이터 처리의 분산 데이터 처리(Distributed da. spidyweb.tistory.com 2. python 언어(+pandas library) 혹은 scala언어 스파크는 여러가지 언어를 지원하지만, scala와 python이 점유율이 높.. 2022. 1. 26.
[Spark] Spark 실행 과정 by Catalyst Optimizer, Query plan 보는 법, Spark UI 보는 법 Query Plan을 보기에 앞서 Spark 코드의 실행 과정을 알아 보겠습니다. 1. Spark 실행 계획 논리적 실행 단계(logical plan) 사용자의 코드를 논리적 실행 계획으로 변환 논리적 실행 계획 단계에서는 추상적 transformation만 표현하고, driver나 executor의 정보를 고려하지 않음 이 논리적 실행 계획으로 변환 시키는 데에는 여러 단계가 있는데, 1) unresolved logical plan(검증 전 논리적 실행 계획) 코드의 유효성과 테이블이나 컬럼의 존재 여부만을 판단하는 과정, 실행 계획은 검증되지 않은 상태 spark analyzer는 컬럼과 테이블을 검증하기 위해 Catalog, 모든 테이블의 저장소 그리고 Dataframe 정보를 활용 필요한 테이블이.. 2022. 1. 12.
[Spark] Spark tuning, job에 따른 최적의 Partition 크기, 개수 조정하기 이번 포스트에는 Partition 수 조정에 관한 spark tuning을 알아 보겠습니다. Partition 개념에 대해 잘 모르시다면 아래의 링크를 참조해주세요. https://spidyweb.tistory.com/312 [Spark Tuning] Spark의 Partition 개념, spark.sql.shuffle.partitions, coalesce() vs repartition(), partitionBy()와의 차이 이번 포스트에는 Spark의 Partition 개념, 종류 및 조작관련 팁, 헷갈릴 만한 개념에 대해 포스트 해보겠습니다. Partition이란? Partition은 RDDs나 Dataset를 구성하고 있는 최소 단위 객체입니다. 각 Partition spidyweb.tistory... 2022. 1. 11.
[Spark] RDD action & transformation + Dataframe의 연산(operation) 분류 Spark는 분산 환경에서 데이터를 다루는 데 필요한 지연 처리방식의 transformation과 즉시 실행 방식의 action을 제공 그리고 DataFrame과 Dataset의 transformation, action과 동일한 방식으로 동작한다. 1. RDD transformation Spark Transformation 는 기존의 RDD에서 새로운 RDD를 생성하는 function이다. Lazy 처리방식이라서 action을 호출할 때 transformation이 실제로 실행된다. -> transformation을 수행할 때 query plan만 만들고 실제로 메모리에 올리지는 않는다. action이 호출될 때 transformation을 메모리에 올려서 수행하고 action을 수행시킨다. transf.. 2021. 12. 29.
[Spark] Spark 자주 쓰이는 Config 정리 driver,executor memory, dynamic allocation properties 분류 설명 예시 spark.master Application Properties 클러스터 매니저(리소스 매니저 설정) local[*], yarn, k8s://HOST:PORT, mesos: //HOST:PORT spark.driver.extraClassPath Runtime Environment 드라이버의 클래스 경로에 추가할 추가 클래스 경로 항목 /usr/lib/hadoop-lzo/lib/*:/usr/lib/hadoop/hadoop-aws.jar:/usr/share/aws/aws-java-sdk/*$spark.driver.extraLibraryPath /usr/lib/hadoop/lib/native:/usr/lib/hadoop-lzo/lib/native:/docker/usr/lib.. 2021. 12. 28.
[Spark] Spark Config정리 SparkSession.config vs spark.conf.set() ,spark-defaults.conf vs spark-submit vs pyspark code 적용 우선순위 *local에서 Jupyter Notebook을 통해 test해본 환경이기 때문에, UI에서 config 확인되는지 여부,명령어로 config가 확인 가능한지 여부에 대해서는 EMR+notebook과 같은 환경에서도 동일한 지는 알 수 없습니다. 1. SparkSession.config() vs spark.conf.set() sparksession.config() spark.conf.set() 용도 spark 설정을하는 method 적용되는 시점 SparkSession생성시 SparkSession생성 후 UI에서 확인 되는지 여부 O X spark.sparkContext.getConf().getAll()에서 확인 되는지 여부 O X 실제로 config가 적용되는지 O O 같은 config에 대한 처리 s.. 2021. 12. 28.
728x90