데브코스65 데이터 엔지니어링 63일차 TIL 학습내용Kafka란? : 실시간 데이터를 처리하기 위해 설계된 오픈소스 분산 스트리밍 플랫폼 - 데이터 재생이 가능한 분산 커밋 로그(Distributed Commit Log) - Scalability와 Fault Tolerance를 제공하는 Publish-Subscription메시징 시스템(Producer-Consumer) - High Throughput과 Low Latency 실시간 데이터 처리에 맞게 구현됨 - 분산 아키텍처를 따르기 때문에 Scale Out이란 형태로 스케일 가능 - 서버 추가를 통해 Scalability달성(서버=Broker) - 정해진 보육기한(retention period) 동안 메시지를 저장 Kafka의 주요기능 및 이점 - 스트림 처리 .. 2024. 6. 30. 데이터 엔지니어링 62일차 TIL 학습내용Nginx란? - 보통 웹서버들의 앞단에 로드밸런서(Load Balancer)로 사용 - 동시에 요청을 로그하는데 사용(HTTP 요청헤더와 응답헤더 내용을 기록) - 보통 이 로그를 logstash등의 툴을 사용하여 GDFS나 Kafka로 푸시한다. Data Drift로 인한 모델 성능 저하 - ML모델에서 가장 중요한것은 훈련 데이터 - 시간이 지나면서 훈련에 사용한 데이터와 실제 환경의 데이터가 다르게 변화. - 이를 Data drift라고 부르며 이를 모니터링하는 것이 중요하다 =>> 주기적으로 ML모델을 다시 빌딩해주는 일이 필요함 ! A/B테스트란? - 온라인 서비스에서 새 기능의 임팩트를 객관적으로 측정하는 방법 - ex) 의료쪽에서 무작위 .. 2024. 6. 30. 데이터 엔지니어링 61일차 TIL 학습 내용빅데이터 처리의 발전 - 처음에는 배치로 시작 - 처리할 수 있는 데이터의 양이 중요 - 서비스가 고도화되면서 점점 더 실시간 처리 요구가 생기기 시작 - Realtime 처리 vs Semi Realtime 처리 - 동일 데이터 소비가 필요한 케이스 증가 : 다수의 데이터 소비자 등장 처리량(Throughput) vs 지연시간(Latency) - 처리량 : 주어진 단위 시간동안 처리할 수 있는 데이터의 양 - 클수록 처리 할 수 있는 데이터의 양이 큼을 의미한다. - 배치 시스템에서 더 중요(데이터 웨어하우스) - 지연시간 : 데이터를 처리하는데 걸리는시간 - 적을수록 응답시간이 빠름을 의미한다. .. 2024. 6. 30. 데이터 엔지니어링 60일차 TIL 학습 내용SparkML - 머신러닝 관련 다양한 알고리즘, 유틸리티로 구성된 라이브러리 - Classification, Regression, Clustering, Collaborative Filtering, Dimensionality Reduction 등 - 아직 딥러닝은 지원이 미약하다. - RDD 기반과 데이터프레임 기반의 두 버전이 존재 - spark.mllib vs spark.ml - spark.mllib = RDD기반, spark.ml = 데이터프레임기반 - 항상 spark.ml을 사용할것 ! Spark ML의 장점 - 원스톱 ML 프레임웍! - 데이터프레임과 SparkSQL등을 이용해 전처리 .. 2024. 6. 30. 데이터 엔지니어링 59일차 TIL 학습 내용 Spark의 주요 파일 타입 Parquet : Spark의 기본 파일 포맷 - 트위터와 클라우데라에서 공동 개발(Doug Cutting)파티션 다시 나누기 df2 = df.repartition(4)파티션 줄이기 df3 = df2.coalesce(2)파티션 저장 format종류 : avro ,parquet, json 등df.write \ .format("avro") \ .mode("overwrite") \ .option("path", "dataOutput/avro/") \ .save()Transformations and Actions - Transformations - Narrow Dependencies : 독립적인 partition level 작업 .. 2024. 6. 30. 데이터 엔지니어링 58일차 TIL 학습 내용Spark SQL이란? - Spark SQL은 구조화된 데이터 처리를 위한 Spark모듈 - 데이터 프레임 작업을 SQL로 처리 가능 - 데이터프레임에 테이블 이름 지정 후 sql함수 사용가능 - 판다스에도 pandasql모듈의 sqldf 함수를 이용하는 동일한 패턴 존재 - HQL(Hive Query Language)과 호환제공 - Hive 테이블들을 읽고 쓸 수 있다.(Hive Metastore) Spark SLQ 사용법 1. 데이터 프레임을 기반으로 테이블 뷰 생성 - createOrReplaceTempView : spark Session이 살아있는 동안 존재 - createO.. 2024. 6. 30. 이전 1 2 3 4 5 6 ··· 11 다음