📋 밋업 한눈에 보기

발표자는 그동안 AI 학습에 투입해 온 값비싼 인프라와 경험을 운영 환경에서 재활용하기 위해, 분석가·데이터 사이언티스트·ML 엔지니어 등 사용자 유형(페르소나)별로 서로 다른 3개의 데이터 파이프라인을 구축한 경험을 공유했다. PostgreSQL을 트랜잭션과 분석을 함께 처리하는 중심 데이터베이스로 삼고, CDC로 변경 데이터를 캡처해 자연어 인터페이스에 연결하거나 Apache Iceberg 기반 lakehouse로 모으는 구조를 소개했다. 발표 후반에는 Kafka를 Kubernetes 오퍼레이터로 운영하는 방식과 KRaft로의 전환, 그리고 AI 에이전트가 DB에 접근할 때 필요한 보안(시크릿 관리, SELECT 전용 권한) 이야기가 이어졌다. 전반적으로 오픈소스와 CNCF 커뮤니티에 경험을 되돌려주고 싶다는 메시지가 강조됐다.

🔑 핵심 요점

  • 발표자는 AI 학습에 투입된 값비싼 인프라와 노하우를 운영 파이프라인으로 재활용하는 것을 목표로 삼았다.
  • 분석가, 데이터 사이언티스트, ML 엔지니어라는 서로 다른 페르소나를 위해 3개의 별도 데이터 파이프라인을 구축했다.
  • 첫 번째 파이프라인은 PostgreSQL 운영 DB의 변경 데이터를 CDC로 캡처해 자연어 인터페이스로 바로 노출한다.
  • 두 번째 파이프라인은 여러 소스를 Apache Iceberg 기반 lakehouse로 모아 여러 쿼리 엔진이 접근할 수 있게 한다.
  • 세 번째 파이프라인은 PostgreSQL에서 바로 실시간 분석(HTAP 성격)을 수행해 별도 ETL 지연을 줄인다.
  • Kafka는 Kubernetes 위에서 오퍼레이터로 운영되며, KRaft 도입으로 예전과 달리 ZooKeeper 없이 동작한다.
  • 자연어로 DB에 질의하는 AI 에이전트에게는 SELECT 전용 권한과 별도 시크릿 관리를 적용해 보안을 확보했다.

🛠 핵심 기술 쉽게 이해하기

PostgreSQL

오픈소스 관계형 데이터베이스로, 최근에는 벡터 검색(pgvector), 지리정보(PostGIS) 같은 확장 기능이 붙으면서 단순 트랜잭션 DB를 넘어 범용 데이터 플랫폼으로 성장하고 있다.

왜 필요한가 — 하나의 오픈소스 DB로 트랜잭션 처리와 분석을 함께 다루고, 오랫동안 검증된 커뮤니티 생태계를 활용하기 위해 선택됐다.

발표에서는 — 발표에서는 PostgreSQL이 사용량 기준 4번째로 많이 쓰이는 데이터베이스로 성장했다는 점과, 확장 기능 덕분에 벡터·지리공간 워크로드까지 흡수하고 있다는 흐름을 소개했다.

Apache Iceberg

대용량 테이블 데이터를 위한 오픈 테이블 포맷으로, 여러 엔진이 같은 데이터셋을 일관되게 읽고 쓸 수 있게 해주는 lakehouse의 핵심 기술이다.

왜 필요한가 — 여러 소스에서 들어오는 데이터를 하나의 레이크하우스로 통합하고, 여러 쿼리 에이전트가 동시에 접근할 수 있게 하기 위해 사용한다.

발표에서는 — 두 번째 파이프라인에서 여러 원천 데이터를 Iceberg 기반 lakehouse로 모아 다양한 쿼리 에이전트가 활용할 수 있도록 구성했다고 설명했다.

Change Data Capture (CDC)

운영 데이터베이스에서 발생하는 insert/update/delete 같은 변경 사항을 실시간으로 감지해 다른 시스템으로 스트리밍하는 기술이다.

왜 필요한가 — 운영 DB를 직접 건드리지 않으면서도 최신 데이터를 분석·AI 파이프라인에 지연 없이 반영하기 위해 사용한다.

발표에서는 — 첫 번째 파이프라인에서 PostgreSQL의 변경 데이터를 CDC로 캡처해 자연어 인터페이스로 바로 노출하는 구조로 소개됐다.

Apache Kafka

대용량 이벤트·메시지를 안정적으로 스트리밍하기 위한 분산 메시징 시스템이다.

왜 필요한가 — 파이프라인 사이에서 변경 데이터와 이벤트를 안정적으로 전달하는 백본으로 사용한다.

발표에서는 — Kubernetes 위에서 오퍼레이터로 Kafka를 운영하며, 예전에는 ZooKeeper가 필요했지만 이제는 KRaft 방식으로 전환되어 ZooKeeper 없이 운영할 수 있게 됐다는 점이 언급됐다.

Cilium

eBPF 기반의 CNCF 네트워킹·보안 프로젝트로, Kubernetes 클러스터 내부의 네트워크 트래픽 관리와 관측을 담당한다.

왜 필요한가 — 클러스터 네트워크 트래픽을 안전하게 관리하고 관측 가능성을 높이기 위해 사용한다.

발표에서는 — 발표 후반 보안·네트워킹 섹션에서 CNCF 프로젝트로 클러스터 네트워크 작업에 활용된다고 짧게 언급됐다.

🧭 추구 방향과 흐름

  • 페르소나 기반 데이터 파이프라인 설계 — 분석가, 데이터 사이언티스트, ML 엔지니어 등 사용자 유형별로 필요한 데이터 접근 방식이 다르다는 전제 아래, 하나의 파이프라인이 아니라 목적에 맞는 3개의 별도 파이프라인(자연어 조회, lakehouse, 실시간 분석)을 구축하는 방향을 제시했다.
  • PostgreSQL 중심의 통합 아키텍처 — 벡터·지리정보 확장이 붙은 PostgreSQL을 트랜잭션과 분석을 함께 처리하는 HTAP 성격의 중심 DB로 삼아, 별도의 전용 데이터베이스 없이도 하나의 오픈소스 DB로 다양한 워크로드를 감당하려는 방향을 강조했다.
  • 오픈소스·CNCF 커뮤니티 협업 — 발표자는 CNCF와의 연계와 커뮤니티 공유를 여러 차례 언급하며, 사내에서 검증한 파이프라인 경험을 오픈소스 생태계에 되돌려주는 것을 목표로 삼았다.
  • AI 에이전트의 안전한 데이터 접근 — 자연어로 DB에 질의하는 AI 에이전트에게는 SELECT만 허용하고 시크릿을 별도로 관리하는 등, AI가 운영 데이터에 접근할 때 발생할 수 있는 위험을 최소화하는 보안 우선 설계를 강조했다.

💬 Q&A 하이라이트

Q. 왜 PostgreSQL을 중심 데이터베이스로 선택했는가

오픈소스 생태계로서 오랫동안 커뮤니티에서 검증되어 왔고, 벡터·지리정보 같은 확장 기능이 계속 추가되며 범용 플랫폼으로 성장하고 있기 때문이라고 답했다.

🚀 바로 활용하기

  1. PostgreSQL에 pgvector, PostGIS 확장을 설치해 벡터 검색과 지리정보 쿼리를 직접 테스트해본다.
  2. Apache Iceberg 공식 문서를 참고해 여러 소스 데이터를 하나의 lakehouse 테이블로 합쳐본다.
  3. PostgreSQL용 CDC 파이프라인을 구성해 변경 데이터를 Kafka로 스트리밍해본다.
  4. 자연어로 DB에 질의하는 AI 에이전트를 만들 때 SELECT 전용 계정과 시크릿 관리 정책을 적용해본다.

🔗 참고 자료