반응형

kafka 7

Avro란? JSON과 Avro의 차이 (아브로, 에이브로)

Avro란? JSON과 Avro의 차이 (아브로, 에이브로) 직렬화 / 역직렬화 (Serialization, Deserialization) Avro에 대해서 알기 전에 우선 직렬화와 역직렬화가 무엇인지에 대해 먼저 알고있어야 한다. 디스크에 데이터를 저장하거나, 네트워크로 데이터를 전송하려면 객체를 직렬화한 후 사용해야한다. 직렬화(serialization)란 객체를 전송 가능한 형태로 만드는 것으로써, 데이터를 연속적인 형태로 변형하는 것이다. 반대로, 디스크에 저장된 데이터를 읽거나, 네트워크를 통해 전송된 데이터를 받아서 메모리에 재구축 하려면 다시 객체 형태로 만들어야하며 이 과정을 역직렬화(deserialization)라고 한다. Avro란? Avro(에이브로, 아브로)는 Apache에서 만든 ..

Network 2022.04.04

[Kafka] 아파치 카프카 스트림즈란? (Apache Kafka Streams)

[Kafka] 아파치 카프카 스트림즈란? (Apache Kafka Streams) 아파치 카프카 스트림즈 카프카는 분산 이벤트 스트리밍 플랫폼으로써, 프로듀서와 컨슈머를 사용해서 데이터를 보내고 가져와서 처리할 수 있다. 수많은 국내외 기업에서 카프카를 사용하고 있으며, 자바/고랭/파이썬과 같은 언어들을 사용해서 프로듀서와 컨슈머를 개발하고 있다. 하지만 컨슈머를 사용해서 데이터를 처리하는 것보다 더 안전하고 빠르면서도 다양한 기술을 사용할 수 있는 것이 있다. 바로 '카프카 스트림즈Kafka Streams'이다. 카프카 스트림즈는 카프카에서 공식적으로 제공하는 자바 라이브러리로써, 토픽에 있는 데이터를 낮은 지연과 빠른 속도로 처리할 수 있다. 스트림즈는 라이브러리로 제공되는 것이므로, 자바/스칼라/코..

Kafka 2022.02.21

Confluent Cloud Kafka란? (아파치 카프카 vs 컨플루언트 카프카)

Confluent Cloud Kafka란? (아파치 카프카 vs 컨플루언트 카프카) 대량의 데이터를 다룬다면 카프카가 거의 필수라고 말할 만큼, 카프카는 요즘 대세이다. 하지만 카프카를 실제로 운영하는 데에는 많은 노하우가 필요하다. 토픽 삭제 정책, bootstrap(부트스트랩) 접근 권한 등과 같은 운영 이슈는 노하우가 없다면 시행착오를 많이 겪어야 되는 과정이다. 이러한 시행착오와 운영성 이슈를 해결하고 싶다면, 아래의 SaaS 카프카 플랫폼이 도움이 될 것이다. 카프카에 대한 기본 개념은 아래 글을 참고하면 좋다. [Kafka] 카프카 기본 개념_1 (브로커, 프로듀서, 컨슈머, 메시지 + 주키퍼) [Kafka] 카프카 기본 개념 및 간단한 설명 카프카란? 카프카(Kafka) 또는 카프카 클러스터..

Kafka 2022.02.20

[Kafka] 카프카 lag(랙) 간단한 설명 (Consumer Lag, Burrow)

[Kafka] 카프카 lag(랙) 간단한 설명 (Consumer Lag, Burrow) 카프카 lag(랙)이란? 프로듀서는 토픽 내의 파티션에 데이터를 차곡차곡 넣는 역할을 한다. 이 파티션에 데이터가 하나씩 들어갈 때마다 각 데이터에는 오프셋이라는 숫자가 붙게 된다. 컨슈머는 파티션의 데이터를 하나씩 읽어오는 역할을 한다. 컨슈머가 데이터를 어디까지 읽었는지 확인하기 위해 오프셋을 남겨둔다. 오프셋에 대한 설명은 아래 글을 참고하면 된다. [Kafka] 카프카 기본 개념_1 (브로커, 프로듀서, 컨슈머, 메시지 + 주키퍼) [Kafka] 카프카 기본 개념 및 간단한 설명 카프카란? 카프카(Kafka) 또는 카프카 클러스터(Kafka Cluster)는 분산 스트리밍 플랫폼으로써, 여러 대의 브로커를 구성..

Kafka 2022.02.19

[Kafka] 카프카 기본 개념_3 (소스 커넥트, 싱크 커넥트, 커넥터)

[Kafka] 카프카 기본 개념 및 간단한 설명 (카프카 기본 개념에 대한 내용은 아래 두 개의 링크를 참고하면 좋다.) [Kafka] 카프카 기본 개념_1 (브로커, 프로듀서, 컨슈머, 메시지 + 주키퍼) [Kafka] 카프카 기본 개념 및 간단한 설명 카프카란? 카프카(Kafka) 또는 카프카 클러스터(Kafka Cluster)는 분산 스트리밍 플랫폼으로써, 여러 대의 브로커를 구성한 클러스터를 의미한다. 카프 unit-15.tistory.com [Kafka] 카프카 기본 개념_2 (토픽, 파티션, 세그먼트, 리플리케이션, 리더-팔로워) [Kafka] 카프카 기본 개념 및 간단한 설명 토픽 ⊃ 파티션 ⊃ 세그먼트 1. 토픽(topic) 카프카는 메시지 피드들을 토픽으로 구분한다. 각 토픽의 이름은 카..

Kafka 2022.01.31

[Kafka] 카프카 기본 개념_2 (토픽, 파티션, 세그먼트, 리플리케이션, 리더-팔로워)

[Kafka] 카프카 기본 개념 및 간단한 설명 (브로커, 프로듀서, 컨슈머와 관련된 내용은 아래 링크에 자세히 나와있다.) [Kafka] 카프카 기본 개념_1 (브로커, 프로듀서, 컨슈머, 메시지 + 주키퍼) [Kafka] 카프카 기본 개념 및 간단한 설명 카프카란? 카프카(Kafka) 또는 카프카 클러스터(Kafka Cluster)는 분산 스트리밍 플랫폼으로써, 여러 대의 브로커를 구성한 클러스터를 의미한다. 카프 unit-15.tistory.com 토픽 ⊃ 파티션 ⊃ 세그먼트 1. 토픽(topic) 카프카는 메시지 피드들을 토픽으로 구분한다. 토픽은 데이터가 저장되는 공간이며, 데이터베이스의 테이블과 유사하다고 생각하면 된다. 각 토픽의 이름은 카프카 내에서 고유하다. 2. 파티션(partition..

Kafka 2022.01.31

[Kafka] 카프카 기본 개념_1 (브로커, 프로듀서, 컨슈머, 메시지 + 주키퍼)

[Kafka] 카프카 기본 개념 및 간단한 설명 카프카란? 카프카(Kafka) 또는 카프카 클러스터(Kafka Cluster)는 분산 스트리밍 플랫폼으로써, 여러 대의 브로커를 구성한 클러스터를 의미한다. 카프카는 링크드인(LinkedIn)의 개발자 세 명(제이 크렙스, 준 라오, 네하 나크헤데)이 만든 것이 시초였으며, 2011년 아파치 오픈소스로 공개된 아파치 프로젝트 애플리케이션이다. 당시 링크드인 개발자들이 직면한 문제 데이터 중앙저장소가 무엇인가? - 현재는 DW(Data Warehous)가 익숙하지만, 당시에는 하둡(Hadoop)도 없었고 빠르게 대응할 SQL 데이터베이스도 없었다. 하지만 모든 데이터에 빠르게 접근하기 위한 조치가 필요했다. 다양한 데이터 소스가 존재한다는 이슈 - 사용할 데..

Kafka 2022.01.31
반응형