-
[Kafka]KsqlDB 실습해보기 - push & pull query카테고리 없음 2022. 7. 31. 17:26반응형
필수 개념 이해와 실습 환경 설정
KsqlDB 필수 개념을 숙지하지 않으신 분께서는 아래의 링크로 들어가 확인 후 다시 와서 봐주시기 바랍니다.
[kafka] KsqlDB란? - Ksqldb 주요 개념(push, pull query)과 kafka에서 사용하는 Streaming Processing 개념(kstream, kta
KSQLDB를 알기 전에 알아야 할 것 - Batch Processing vs Stream Processing Ksql은 Streaming processing을 하기 위한 툴입니다. 그래서 Batch Processing하고 Stream Processing의 차이점을 알아야 하는데요. 아..
magpienote.tistory.com
작업환경은 이해 하지 않아도 무관하나 먼저 작업환경을 알아두면 이해하기 좋을 것 같습니다. 아래 글 확인
[Kafka] ksqldb 실습환경 구축해보기
KSQLDB 실습 환경 KsqlDB를 실습하면서 배워보는 시간을 가져볼 예정입니다. 먼저 stream이 있어야 하기 때문에 stream을 하나 만들어 실습을 진행하겠습니다. 먼저 진행하기에 앞서 제가 사용하게 될
magpienote.tistory.com
Push와 Pull
Emit changes;절을 구분으로 나뉘게 됩니다. Emit Changes를 붙이면 push query 안붙이면 pull query가 됩니다.
- push query - 업데이트 된 데이터를 밀어 넣어주는 형식으로 계속 보여주는 쿼리
- pull query - 지금 가지고 있는 데이터를 한번 보여주고 바로 끝내는 쿼리
실습은 저번에 만든 Stream과 Table을 이용하여 확인해 보겠습니다. 아래와 같은 명령어를 날려보면 그림과 같이 push 되면서 업데이트되는 모습을 볼 수 있습니다.
selecT * from order_stream EMIT CHANGES;
Table도 Push query로 확인해 보겠습니다. Table은 상태기반으로 Sum price가 변경된 부분을 push 해서 알려주는 모습을 볼 수 있습니다. 상태 기반으로 업데이트되는 것이기 때문에 업데이트된 내용을 push 해서 보여주는 것이지 데이터가 insert 되는 것이 아닙니다. 데이터는 groupby를 했기 때문에 로우는 한 줄입니다.
select * from order_table_groupby_menu emit changes;
그럼 pull query를 해서 보면 아래와 같이 state기반으로 로우는 한줄로 보이는 모습을 볼 수 있습니다.
반응형