데브코스 TIL/빅데이터, 스트리밍 데이터 처리 32

Kafka & Spark Streaming 연동 실습

실습 fake_people 토픽의 title top 10 계산하기 spark.jars.packages 설정 spark-defaults.conf 파일 수정 SparkSession 생성시 config 지정 spark-submit 실행시 --packages 옵션 사용 # kafka_source_streaming.py from pyspark.sql import SparkSession from pyspark.sql.functions import from_json, col, expr from pyspark.sql.types import StructType, StructField, StringType, LongType, DoubleType, IntegerType, ArrayType if __name__ == "__m..

Spark Streaming 소개 및 실습

강의 Spark Streaming "Spark Streaming"는 실시간 데이터 스트림 처리를 위한 Spark API 입니다. 데이터 소스 : Kafk, Kinesis, Flume, TCP 소켓 고급 함수 사용 : Join, Map, Reduce, Window 웹 UI : localhost:4040 동작 방식 마이크로 배치로 데이터 처리 루프 새로운 데이터를 이전 데이터에 Merge 혹은 Replace 데이터 위치 관리 실패시 Fault Tolerance 및 데이터 재처리 관리 최종 결과 스트림 일괄 생성 : Spark Engine DStream RDD 기반 Spark SQL 엔진의 최적화 기능 사용 불가 이벤트 발생 시간 기반 처리 불가 Structured Streaming DataFrame 기반 C..

Kafka 프로그래밍 실습

실습 랜덤하게 사람 정보 생성 및 저장하는 KafkaProducer 구현 Faker 모듈 사용 pydantic 모듈의 BaseModel 사용 Topic 생성 후 추가 pip install faker pip install pydantic # person.py from pydantic import BaseModel class Person(BaseModel): id: str name: str title: str # fake_person_producer.py import uuid import json from typing import List from person import Person from faker import Faker from kafka.admin import NewTopic from kafka.e..

Kafka 프로그래밍

강의 Kafka 프로그래밍 언어 Java Apache Kafka Java Client Spring Kafka Python Confluent Kafka Python Kafka-Python pip install kafka-python .NET Confluent Kafka .NET Go Sarama Node.js node-rdkafka kafka-node Kafka 기본 프로그래밍 Producer 생성 from time import sleep from json import dumps from kafka import KafkaProducer producer = KafkaProducer( bootstrap_servers=['localhost:9092'], value_serializer=lambda x: dumps..

Kafka 설치

강의 Kafka 설치 Docker Compose 사영 Github repo 사용 : https://github.com/conduktor/kafka-stack-docker-compose full-stack.yml zk-single-kafka-single.yml zk-single-kafka-multiple.yml zk-multiple-kafka-single.yml zk-multiple-kafka-multiple.yml Kafka 웹 UI localhost:8080 ID : admin@admin.io / Password : admin git clone https://github.com/conduktor/kafka-stack-docker-compose cd kafka-stack-docker-compose doc..