목록Kafka와 Spark Streaming (24)
터칭 데이터

4. Kafka 기본 프로그래밍 Kafka로 데이터를 생성하고 소비하는 코드를 작성해보자 Contents 1. Client tool 사용 2. Topic 파라미터 설정 3. Consumer 옵션 살펴보기 4. ksqlDB 사용해보기 5. 숙제 Client Tool 사용 Kafka Client Tool을 사용해보자 Kafka CLI Tools 접근 방법 docker ps를 통해 Broker의 Container ID 혹은 Container 이름 파악 해당 컨테이너로 로그인 ○ docker exec -it Broker_Container_ID sh 거기서 다양한 kafka 관련 클라이언트 툴을 사용 가능 ○ kafka-topics (이번 실습에서 사용) ○ kafka-configs ○ kafka-console-..

3. Kafka 소개 Kafka가 무엇인지 소개하는 시간을 가져보자 Contents 1. Kafka 역사 2. Kafka 소개 3. Kafka 아키텍처 4. Kafka 중요 개념 5. Kafka 설치 6. Kafka Python 프로그래밍 Kafka Python 프로그래밍 Kafka 프로그래밍을 위한 Python 모듈을 설치하고 기본 프로그래밍을 수행해보자 Kafka 프로그래밍 옵션들 Java: ○ Apache Kafka Java Client: 아파치 카프카의 공식 Java 클라이언트 라이브러리 ○ Spring Kafka: 스프링 프레임워크와 Kafka를 통합하기 위한 라이브러리 Python: ○ Confluent Kafka Python: Confluent에서 개발한 공식 Kafka Python 클라이언..

3. Kafka 소개 Kafka가 무엇인지 소개하는 시간을 가져보자 Contents 1. Kafka 역사 2. Kafka 소개 3. Kafka 아키텍처 4. Kafka 중요 개념 5. Kafka 설치 6. Kafka Python 프로그래밍 Kafka 설치 Docker를 이용해서 Kafka를 설치해보자 Kafka 설치 방식 Docker Compose 사용 ○ Docker Desktop을 먼저 실행할 것 아래 Github repo 사용 ○ https://github.com/conduktor/kafka-stack-docker-compose ■ 다양한 yml 파일들이 존재 ● full-stack.yml (실습 영상에서 사용) ● zk-single-kafka-single.yml ● zk-single-kafka-m..

3. Kafka 소개 Kafka가 무엇인지 소개하는 시간을 가져보자 Contents 1. Kafka 역사 2. Kafka 소개 3. Kafka 아키텍처 4. Kafka 중요 개념 5. Kafka 설치 6. Kafka Python 프로그래밍 Kafka 기타 기능 살펴보기 Kafka Connect란? (1) Kafka Connect는 Kafka 위에 만들어진 중앙집중 데이터 허브 ○ 별도의 서버들이 필요하며 Kafka Connect는 별도의 오픈소스 프로젝트임 ○ 데이터 버스 혹은 메세지 버스라고 볼 수 있음 두 가지 모드가 존재 ○ Standalone 모드: 개발과 테스트 ○ Distributed 모드 데이터 시스템들 간의 데이터를 주고 받는 용도로 Kafka를 사용하는 것 ○ 데이터 시스템의 예: 데이터..

3. Kafka 소개 Kafka가 무엇인지 소개하는 시간을 가져보자 Contents 1. Kafka 역사 2. Kafka 소개 3. Kafka 아키텍처 4. Kafka 중요 개념 5. Kafka 설치 6. Kafka Python 프로그래밍 Kafka 중요 개념 Kafka의 여러 가지 중요 개념(Producer, Topic, Consumer)에 대해서 다시 알아보고 다른 기능들도 살펴보자. Producer, Broker, Consumer, Controller, Consumer Group Topics, Partitions, Segments Segmant 파일이자 Commit Log 요약하자면 Topic은 Producer가 만드는 이벤트 스트림(데이터), Topic은 다수의 Partition으로 나누어집니다...

3. Kafka 소개 Kafka가 무엇인지 소개하는 시간을 가져보자 Contents 1. Kafka 역사 2. Kafka 소개 3. Kafka 아키텍처 4. Kafka 중요 개념 5. Kafka 설치 6. Kafka Python 프로그래밍 Kafka 아키텍처 Kafka 아키텍처를 알아보면서 어떤 컴포넌트들로 구성되는지 알아보자 데이터 이벤트 스트림 데이터 이벤트 스트림을 Topic이라고 부름 ○ Producer는 Topic을 만들고 Consumer는 Topic에서 데이터를 읽어들이는 구조 ○ 다수의 Consumer가 같은 Topic을 기반으로 읽어들이는 것이 가능 ○ 각 Consumer는 자신이 어디 까지 읽었는지 Off-set을 갖고 있습니다. Message (Event) 구조: Key, Value, ..

3. Kafka 소개 Kafka가 무엇인지 소개하는 시간을 가져보자 Contents 1. Kafka 역사 2. Kafka 소개 3. Kafka 아키텍처 4. Kafka 중요 개념 5. Kafka 설치 6. Kafka Python 프로그래밍 Kafka 역사 Kafka의 탄생에 대해 알아보자 Kafka의 탄생 2008년 LinkedIn에서 내부 실시간 데이터 처리를 위해 개발한 소프트웨어 플랫폼 Scala와 Java로 작성 2011년 초에 오픈소스화 (Apache) https://kafka.apache.org/ 현재 포춘지 선정 100대 기업 중 80% 이상이 Kafka를 사용 Kafka의 발전 2014년 Kafka 개발자들이 LinkedIn에서 나와서 Confluent라는 회사 창업 2021년 미국 나스닥..
2. Udemy 데이터 시스템 발전 여정 살펴보기 Udemy 데이터 시스템이 어떻게 배치에서 실시간으로 발전했는지 그 여정을 살펴보자 Contents 1. 1장 퀴즈 리뷰 2. Udemy 데이터팀 빌딩 여정 3. Udemy 추천엔진 발전 요약 4. Udemy 추천엔진 1기 5. Udemy 데이터 인프라 클라우드 이전 6. Udemy 추천엔진 2기 7. 사용자가 유데미를 방문하면 무슨 일이 벌어질까? 8. Udemy 이벤트 처리 시스템 2기 1장 숙제 리뷰 1장 퀴즈를 같이 풀어보자 1장 퀴즈: https://forms.gle/3nu6zAQuVkA1cVtF9 구글이 다른 검색엔진보다 뒤어난 결과를 보여주는데 기본이 되었던 알고리즘의 이름은 무엇인가? Brain Rank (존재 X) Page Rank Att..

Contents 1. 실시간 데이터 처리 소개 2. Udemy 데이터 시스템 발전 여정 소개 3. Kafka 소개 4. Kafka 기본 프로그래밍 5. Spark Streaming 소개 6. Spark Streaming + Kafka 프로그래밍 7. 마무리 Contents 1. 구글이 데이터 분야에 끼친 영향 2. 데이터 처리의 발전 단계 3. 실시간 데이터 종류와 사용 사례 4. 실시간 데이터 처리 챌린지 실시간 데이터 처리 챌린지 실시간으로 데이터를 처리할 때 어떤 챌린지들이 있는지 살펴보자 실시간 데이터 처리 단계 이벤트 데이터 모델 결정 이벤트 데이터 전송/저장 이벤트 데이터 처리 이벤트 데이터 관리 이슈 모니터링과 해결 이벤트 데이터 모델 결정 최소 Primary Key와 Timestamp가 필..
Contents 1. 실시간 데이터 처리 소개 2. Udemy 데이터 시스템 발전 여정 소개 3. Kafka 소개 4. Kafka 기본 프로그래밍 5. Spark Streaming 소개 6. Spark Streaming + Kafka 프로그래밍 7. 마무리 Contents 1. 구글이 데이터 분야에 끼친 영향 2. 데이터 처리의 발전 단계 3. 실시간 데이터 종류와 사용 사례 4. 실시간 데이터 처리 챌린지 실시간 데이터 종류와 사용 사례 실시간으로 발생하는 데이터로 어떤 것들이 있는지 알아보자 Events are everywhere - Online Service 온갖 종류의 Funnel Data Product Impressions, Clicks (Click Stream), Purchase, … User..