Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- logstash
- kafka ui
- kafka connect
- ui for kafka
- Kafka
- MongoDB
- pyspark
- elasticsearch
- kibana
- PostgreSQL
- MariaDB
- naverdevelopers
- PrestoDB
- SSL
- elasticearch
- Python
- fluentd
Archives
- Today
- Total
Dev_duri
Spark (Kafka to Hadoop)-pyspark 본문

개발 서버에 Spark를 사용한 아래와 같은 파이프라인 demo를 구성하였습니다.
Kafka에서 가져온 데이터를 Read하여 HDFS에 ORC나 Parquet 형식으로 저장합니다.

Kafka to hadoop source
|
#contest.py
from pyspark.sql import SparkSession
sc = SparkSession.builder.getOrCreate()
sc.sparkContext.setLogLevel('ERROR')
# Read stream
log = sc.readStream.format("kafka") \
.option("kafka.bootstrap.servers", "10.65.41.140:9092") \
.option("subscribe", "topic13") \
.option("startingOffsets", "earliest") \
.load()
# Write stream - console
query = log.selectExpr("CAST(value AS STRING)") \
.writeStream \
.format("console") \
.option("truncate", "false") \
.start()
# Write stream - HDFS
query2 = log.selectExpr("CAST(value AS STRING)") \
.writeStream \
.format("parquet") \
.outputMode("append") \
.option("checkpointLocation", "/check") \
.option("path", "/test") \
.start()
query.awaitTermination()
query2.awaitTermination()
|
실행 명령어
./bin/spark-submit --packages org.apache.spark:spark-sql-kafka-0-10_2.12:3.2.2,org.apache.kafka:kafka-clients:3.2.2,org.apache.spark:spark-streaming-kafka-0-10-assembly_2.12:3.2.2 contest.py

> Spark UI

> 기존 데이터 조회

> 실시간으로 가져오는 데이터 조회
'Kafka' 카테고리의 다른 글
| Impala/Kudu Kafka Connector (0) | 2023.02.16 |
|---|---|
| Apache Beam (0) | 2023.02.16 |
| Flink (0) | 2023.01.31 |
| Kafka 기본 명령어 (0) | 2022.12.10 |
| Kafka_Tutorial_Word (0) | 2022.12.04 |