TJ_Log
close
프로필 배경
프로필 로고

TJ_Log

  • 분류 전체보기 (98)
    • Data Engineering (27)
      • Data Engineering? (2)
      • Hadoop (3)
      • Elasticsearch (0)
      • Redis (4)
      • Spark (6)
      • Kafka (3)
      • Airflow (1)
      • DB (2)
      • 자격증 (6)
    • Data Analysis (2)
      • Machine Learning(ML) (1)
      • NLP (1)
    • Infra (9)
    • ETC (19)
      • Network (1)
      • Linux (4)
      • Algorithm (3)
      • Spring (3)
      • Python (2)
      • Scala (2)
      • Java (3)
      • Javascript (1)
    • Project (9)
    • Trouble shooting (2)
    • Experience (1)
    • Programmers TIL (28)
      • Algorithm (8)
  • 홈
  • 태그
  • 방명록
[Spark] Spark Streaming _TIL

[Spark] Spark Streaming _TIL

Spark Streaming 소개 - Spark Streaming이란? 실시간 데이터 스트림 처리를 위한 Spark API Kafka, Kinesis, Flume, TCP 소켓 등의 다양한 소스에서 발생하는 데이터 처리 가능 Join, Map, Reduce, Window와 같은 고급 함수 사용 가능 - Spark Streaming 동작방식 데이터를 마이크로 배치로 처리 계속해서 위의 과정을 반복(루프) 이렇게 읽은 데이터를 앞서 읽은 데이터에 merge 배치마다 데이터 위치 관리 (시작과 끝) Falut Tolerance와 데이터 재처리 관리 (실패 시) - Spark Streaming의 내부 동작 Spark Streaming은 실시간 입력 데이터 스트림을 배치로 나눈 다음 Spark Engine에서 처..

  • format_list_bulleted Programmers TIL
  • · 2023. 7. 14.
  • textsms
[Kafka] Kafka 중요 개념 _TIL

[Kafka] Kafka 중요 개념 _TIL

Kafka 중요 개념- Topics, Partitions, Segments 개념도 - TopicConsumer가 데이터(Message)를 읽는다고 없어지지 않음Consumer별로 어느 위치의 데이터를 읽고 있는지 위치 정보를 유지함Fault Tolerance를 위해 이 정보는 중복 저장됨 - Partition과 Segment하나의 Partition은 다수의 Segment로 구성됨Segment는 변경되지 않는 추가만 되는 로그 파일이라고 볼 수 있음 (Immutable, Append-Only) - Commit Log각 Segment는 디스킇상에 존재하는 하나의 파일Segment는 최대 크기가 있어서 이를 넘어가면 새로 Segment파일을 만들어냄그래서 각 Segment는 데이터 오프셋 범위를 갖게 됨Se..

  • format_list_bulleted Programmers TIL
  • · 2023. 7. 12.
  • textsms
[Kafka] Kafka 아키텍처 _TIL

[Kafka] Kafka 아키텍처 _TIL

데이터 이벤트 스트림 - 데이터 이벤트 스트림을 Topic이라고 부름 Producer는 Topic을 만들고 Consumer는 Topic에서 데이터를 읽어들이는 구조 다수의 Consumer가 같은 Topic을 기반으로 읽어들이는 것이 가능 Topic마다 데이터 보존 기한 및 정책이 있음 (default. 7day) - 이벤트 스트림을 구성하는 요소 (Message) : Key, Value, Timestamp 최대 1MB Timestamp는 보통 데이터가 Topic에 추가된 시점 Key 자체도 복잡한 구조를 가질 수 있음 Key가 나중에 Topic데이터를 나눠서 저장할 때 사용됨 (Partitioning) Header는 선택적 구성요소로 경량 메타 데이터 정보 (key-value pairs) - Topic과..

  • format_list_bulleted Programmers TIL
  • · 2023. 7. 12.
  • textsms

[Kafka] Kafka 역사와 소개 _TIL

Kafka의 역사 - Kafka의 탄생 2008년 LinkedIn에서 내부 실시간 데이터 처리를 위해 개발한 소프트웨어 플랫폼 Scala와 Java로 작성 2011년 초에 오픈소스화 (Apache) 현재 포춘지 선정 100대 기업 중 80%이상이 Kafka를 사용 - Kafka의 발전 2014년 Kafka 개발자들이 LinkedIn에서 나와 Confluent라는 회사 창업 (2021년 미국 나스닥 상장) Kafka 소개 - Kafka란 무엇인가? 실시간 데이터를 처리하기 위해 설계된 오픈소스 분산 스트리밍 플랫폼 데이터 재생이 가능한 분산 커밋 로그 (Distributed Commit Log) Scalability Fault Tolerance를 제공하는 Publish-Subscription 메시징 시스템..

  • format_list_bulleted Programmers TIL
  • · 2023. 7. 12.
  • textsms

[Spark] Spark SQL _TIL

Spark SQL이란? - Spark SQL은 구조화된 데이터 처리를 위한 Spark 모듈 - 데이터 프레임 작업을 SQL로 처리 가능 데이터프레임에 테이블 이름 지정 후 sql함수 사용가능 판다스에도 pandassql 모듈의 sqldf함수를 이용하는 동일한 패턴 존재 HQL(Hive Query Language)과 호환 제공 Hive테이블들 읽고 쓸 수 있음 (Hive Metastore) Spark SQL vs DataFrame - SQL로 가능한 작업이라면 DataFrame을 사용할 이유가 없음 두 개를 동시에 사용할 수 있다는 점이 중요 (ex. SQL로 질의하고 데이터 프레임 기반으로 테이블 뷰 생성) - Spark SQL 사용 시 이점 Familiarity / Readability SQL이 가독성..

  • format_list_bulleted Programmers TIL
  • · 2023. 7. 5.
  • textsms

[Spark] Spark 프로그램 구조 _TIL

Spark Session - Spark 프로그램의 시작은 SparkSession을 만드는 것 프로그램마다 하나를 만들어 Spark Cluster와 통신(singleton 객체) Spark 2.0에서 처음 소개됨 - Spark Session을 통해 Spark이 제공해주는 다양한 기능을 사용 DataFrame, SQL, Straeming, ML Api모두 이 객체로 통신 config 메소드를 이용해 다양한 환경설정 가능 단 RDD와 관련된 작업을 할때는 SparkSession밑의 sparkContext객체를 사용 - 관련 문서 : https://spark.apache.org/docs/3.1.1/api/python/reference/api/pyspark.sql.SparkSession.html pyspark.s..

  • format_list_bulleted Programmers TIL
  • · 2023. 7. 4.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (98)
    • Data Engineering (27)
      • Data Engineering? (2)
      • Hadoop (3)
      • Elasticsearch (0)
      • Redis (4)
      • Spark (6)
      • Kafka (3)
      • Airflow (1)
      • DB (2)
      • 자격증 (6)
    • Data Analysis (2)
      • Machine Learning(ML) (1)
      • NLP (1)
    • Infra (9)
    • ETC (19)
      • Network (1)
      • Linux (4)
      • Algorithm (3)
      • Spring (3)
      • Python (2)
      • Scala (2)
      • Java (3)
      • Javascript (1)
    • Project (9)
    • Trouble shooting (2)
    • Experience (1)
    • Programmers TIL (28)
      • Algorithm (8)
최근 글
인기 글
최근 댓글
태그
  • #자격증
  • #data engineering associate
  • #docker
  • #spark
  • #scala
  • #RDB
  • #Kafka
  • #db
  • #dea
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바