카프카, 플링크, 아이스버그를 활용하는 3가지 데이터 엔지니어링 트렌드

2 hours ago 2

아파치 카프카, 아파치 플링크, 아파치 아이스버그는 데이터 생태계에서 인기 있는 기술들이다. 카프카를 사용하면 데이터를 실시간으로 이동할 수 있고, 플링크를 사용하면 필요에 따라 데이터를 처리할 수 있으며, 아이스버그는 저장된 데이터를 구조화되고 탐색 가능한 방식으로 액세스하여 쿼리할 수 있도록 도와준다. 세 기술 모두 데이터 시스템 구축에 막대한 영향력을 가지고 있다.
 

ⓒ Getty Images Bank

오픈소스 소프트웨어 커뮤니티는 3가지 도구 각각에 새로운 기능을 지속적으로 추가하는 한편, 종종 서로 협력하고 있다. 베스트 프랙티스가 지속적으로 진화하고 있다는 의미이다. 또한, 데이터 전문가라면 최근 데이터 거버넌스에 대한 관심이 높아지는 것과 같은 업계 트렌드를 파악하고 있어야 한다는 의미이기도 하다. 

최근 카프카, 플링크, 아이스버그 커뮤니티에서 필자가 목격한 3가지 트렌드를 소개한다. 이들 각각은 엔지니어가 데이터를 관리하고 애플리케이션 요구 사항을 충족할 수 있는 새로운 방법을 제시한다.
 

마이크로서비스를 플링크 스트리밍 애플리케이션으로 재구상하기

데이터를 처리하는 일반적인 방법은 마이크로서비스를 사용해 카프카에서 데이터를 가져와서 동일하거나 다른 마이크로서비스를 사용해 처리한 다음 다시 카프카나 다른 큐에 덤프하는 것이다. 그러나 플링크를 카프카와 함께 사용하면 이런 모든 작업을 수행할 수 있는데, 지연 시간이 짧고 내결함성이 내장되어 있으며 이벤트가 보장되는 보다 안정적인 솔루션을 얻을 수 있다. 
 

ⓒ Confluent

플링크는 개별 풀이 아닌 연속 푸시 프로세스를 사용해 들어오는 데이터를 수신하도록 설정할 수 있다. 또한 마이크로서비스 대신 플링크를 사용하면 정확히 한 번만 의미론과 같은 플링크의 모든 기본 제공 정확도를 활용할 수 있다. 플링크는 2단계 커밋 프로토콜을 통해 개발자가 엔드 투 엔드로 정확히 한 번 이벤트 처리를 보장할 수 있다. 예를 들어, 카프카에 입력된 이벤트는 카프카와 플링크에서 정확히 한 번 처리된다는 뜻이다. 플링크가 가장 잘 대체할 수 있는 마이크로서비스 유형은 운영 분석 상태를 업데이트하는 데이터 처리와 관련된 마이크로서비스이다.
 

플링크를 사용해 SQL로 데이터에 AI 모델을 빠르게 적용하기

카프카와 플링크를 함께 사용하면 데이터를 실시간으로 이동 및 처리하고 재사용 가능한 고품질 데이터 스트림을 생성할 수 있다. 이런 기능은 실시간 의사 결정을 위해 신뢰할 수 있고 즉시 사용 가능한 데이터가 필요한 실시간 복합 AI 애플리케이션에 필수적이다. RAG 패턴을 생각하면, 어떤 모델을 사용하든 적시에 고품질의 컨텍스트로 보완하여 응답을 개선하고 환각을 완화할 수 있다.

플링크 SQL을 사용하면 간단한 SQL 문을 작성해 원하는 모델(예: OpenAI, 애저 오픈AI, 아마존 베드락)을 호출할 수 있다. 실제로는 데이터 스트림을 처리할 때 사용할 플링크 AI용 REST API로 모든 AI 모델을 구성할 수 있다. 이를 통해 맞춤형 자체 개발 AI 모델을 사용할 수 있다. 

AI의 사용례는 무궁무진하지만, 일반적으로 분류, 클러스터링, 회귀에 사용된다. 예를 들어 텍스트의 감정 분석이나 영업 리드의 점수 매기기 등에 사용할 수 있다.

AI 기능 외에도 플링크는 모두가 좋아하는 스트리밍 기술인 카프카와 매우 잘 어울린다. 이것이 바로 플링크가 스트리밍 처리를 위한 커뮤니티의 선택으로 계속 인기를 유지할 수 있는 이유 중 하나이다.
 

커뮤니티가 구축한 아파치 아이스버그 도구 활용하기 

아이스버그를 사용해 대규모 분석 데이터 세트, 특히 데이터 레이크와 데이터 웨어하우스에 저장된 데이터를 관리하는 개발자와 조직이 늘어나면서 아이스버그에 대한 커뮤니티 기여도 크게 증가했다. 예를 들어, 한 클라우드 서비스 업체에서 다른 클라우드 서비스 업체로 아이스버그 카탈로그를 쉽게 옮길 수 있는 마이그레이션 도구가 구축됐다. 또한 특정 아이스버그 인스턴스의 상태를 분석하는 도구도 있다. 

커뮤니티의 또 다른 기여는 아이스버그 테이블로 관리되는 데이터에 통계와 추가 메타데이터를 추가할 수 있는 블롭인 퍼핀(Puffin) 형식이다. 아이스버그 데이터를 플링크로 다시 보낼 수 있는 기능도 플링크와 아이스버그 커뮤니티 커미터들이 기여한 결과물이다.

더 많은 기여자와 솔루션 업체가 광범위한 아이스버그 커뮤니티에 참여함에 따라, 데이터 아키텍처의 어디에 있든 데이터 가치에 그 어느 때보다 더 쉽게 접근할 수 있게 될 것이다. 카프카/플링크 애플리케이션 및 거버넌스에 대한 시프트 레프트(Shift Left) 접근 방식과 결합하면, 아이스버그 테이블은 실시간 분석 사용례를 구축하는 방법을 획기적으로 가속화하고 확장하는 데 도움이 될 수 있다.

카프카, 플링크, 아이스버그 기술을 최신 상태로 유지하려면 각 커뮤니티에서 나오는 KIP, 플립, 아이스버그 PR의 지속적인 스트림을 주시해야 한다. 세 가지 기술의 핵심 기능에서 우위를 점하고 있는 점과 이들 간의 기술적 시너지 효과는 성장하는 이 분야의 트렌드와 기술에 발맞추는 것이 충분히 가치가 있다는 것을 의미한다.

*Adi Polak은 컨플루언트(Confluent)의 개발자 경험 엔지니어링 담당 디렉터이다. 
editor@itworld.co.kr

Read Entire Article