본문 바로가기

Pyspark3

pyspark aggregateByKey aggregateByKey 함수는 RDD의 모든 값을 결합하여 하나의 결과값을 생성한다. 입력 값과 다른 타입의 결과를 생성할 수 있고, 복잡한 집계 연산을 효율적으로 수행할 수 있다.핵심 기능타입 변환: 입력 값(타입 V)을 결과 값(타입 U)으로 변환할 수 있음메모리 효율성: 함수들이 첫 번째 인자를 수정하여 반환 가능 (새 객체 생성 불필요)2단계 집계: 파티션 내부와 파티션 간의 두 단계 집계를 지원기본 구문rdd.aggregateByKey(zeroValue, seqFunc, combFunc, numPartitions=None) 주요 매개변수zeroValue:각 키의 집계를 위한 초기값누적기(accumulator)의 시작 상태를 정의seqFunc (시퀀스 함수):파티션 내에서 값들을 처리하는 함수.. 2025. 3. 3.
PySpark Key-Value 쌍 연산 1. 기본 설정 및 데이터 로드from pyspark import SparkContextsc = SparkContext("local", "PySpark Sales Data Examples")# 판매 데이터: (상품, 판매량, 가격)sales_data = sc.parallelize([ ("Apple", 100, 2.5), ("Banana", 150, 1.8), ("Orange", 80, 3.0), ("Apple", 120, 2.5), ("Banana", 200, 1.5), ("Mango", 50, 4.0), ("Orange", 70, 3.2), ("Apple", 90, 2.8)])# Key-Value 쌍 RDD로 변환: (상품, (판매량, 가격, 총액))sales.. 2025. 3. 1.
pyspark word count 분석 PySpark를 사용한 워드 카운트(Word Count) 알고리즘의 구현과 동작 원리를 분석한다. 전체 코드import pysparktest_file = "hello.txt"sc = pyspark.SparkContext.getOrCreate()text_file = sc.textFile(test_file)counts = text_file.flatMap(lambda line: line.split(" ")) \ .map(lambda word: (word, 1)) \ .reduceByKey(lambda a, b: a + b)print(counts.collect())hello.txt 파일hello worldhello worldhello 1. SparkContext 생성 .. 2025. 2. 26.
반응형