Most Popular
-
GCP에서 VPC 방화벽 규칙을 설정해보자 🔐
들어가며 최근 GCP 내 *Zabbix 서버에서 MySQL 모니터링을 위한 Zabbix Agent 설치 중 포트 에러가 발생했습니다. 원인은 VPC 방화벽 규칙에서 인그레스 규칙이 설정되지 않아 10050 포트 접속이 차단된 것이었습니다. 방화벽 규칙을 새로 생성해 적용하고 나서야 Zabbix 서버와 정상적으로 연결이 되었는데요, 이 과정에서 방화벽 설정의 중요성을 다시 한번 깨달았습니다. 오늘은 앞으로 비슷한 문제 해결을 위해 GCP 네트워크와 방화벽을 정리해 보겠습니다.*Zabbix: 서버 및 네트워크의 상태를 실시간으로 모니터링할 수 있는 오픈소스 기반의 모니터링 툴 1. GCP 네트워크1-1. VPC 공식 문서에서는 Virtual Private Cloud(VPC) 네트워크를 구글의 프로덕션 네트..
-
BigQuery에서 Nested Data의 처리: Dremel 논문으로 이해하기②🕵️♀️
들어가며 지난 글에서는 Dremel 논문[1]을 통해서 Nested Data(중첩 데이터)를 저장하기 위한 아이디어인 반복 레벨과 정의 레벨에 대해 살펴보았습니다. 오늘은 논문의 뒷부분인 반복 레벨과 정의 레벨을 이용해 효율적으로 column stripe를 생성하는 방법과 이를 다시 레코드로 바꾸는 방법을 알아보도록 하겠습니다. 그리고 이렇게 만들어진 레코드를 어떻게 쿼리로 처리하는지까지 살펴보도록 하겠습니다.*column stripe: 컬럼 기반 저장 방식에서 데이터를 나누는 단위. ✅ 레코드 -> 컬럼 Google에서 사용하는 많은 데이터는 희소한(Sparse) 형태, 예를 들자면 수천 개의 필드 중 실제로 값이 존재하는 필드는 백개 정도에 불과하는 형태를 갖고 있었습니다. 때문에 사용되는 필..
-
BigQuery에서 Nested Data의 처리: Dremel 논문으로 이해하기①🕵️♀️
들어가며 빅쿼리로 수집되는 서비스의 데이터를 보면 > 와 같은 데이터 타입을 자주 볼 수 있습니다. 복잡한 데이터 구조를 효율적으로 저장하고 처리하기 위해 이러한 타입이 사용되는데요, 지난주에도 평소와 같이 데이터를 조회하다가 문득 이런 생각이 들었습니다.컬럼 기반 스토리지에서는 중첩된 데이터를 어떻게 처리할까? 컬럼 기반 스토리지는 각 컬럼을 따로 저장해서 압축률을 높이고 조회 성능을 최적화하는데요, STRUCT나 ARRAY와 같이 중첩되고 반복되는 데이터는 단순한 구조가 아니어서 궁금증이 생겼습니다. 이를 이해하기 위해 BigQuery의 기반이 되는 Dremel이 어떻게 Nested Data를 다루는지 알아보았습니다. Dremel의 등장 : Nested Data를 다루는 방법 Dremel은 구글이 2..
-
토스 SLASH 24 리뷰: 토스 증권의 DW 설계 및 운영에서 배운 점 (AU 파이프라인 개선 사례)
들어가며 작년부터 팀에서는 각 서비스의 주요 지표를 직접 생성하기 시작했습니다. 기존에는 마케팅, 사업부 등 각 부서의 요청에 따라 애드혹(Ad-hoc) 방식으로 데이터를 추출하거나 대시보드를 제공했지만, 현재 팀의 목표는 이에 더해 선제적으로 주요 지표를 제공하여 더 다양한 의사결정을 지원하는 것입니다. 이러한 변화 속에서 다른 화사들은 DW(Data Warehouse)를 어떻게 설계하고 운영하는지에 대한 궁금증이 많았습니다. 그러다 토스 SLASH 24의 전천후 데이터 분석을 위한 DW 설계 및 운영하기 발표를 접하게 되었는데요, 이번 글에서는 발표 내용을 정리하고 팀에 어떻게 적용할 수 있을지 생각해 본 내용을 적어보겠습니다. 토스 증권의 AU 파이프라인토스 증권에서는 다양한 패턴(방문 일자..
-
GCP에서 VPC 방화벽 규칙을 설정해보자 🔐
들어가며 최근 GCP 내 *Zabbix 서버에서 MySQL 모니터링을 위한 Zabbix Agent 설치 중 포트 에러가 발생했습니다. 원인은 VPC 방화벽 규칙에서 인그레스 규칙이 설정되지 않아 10050 포트 접속이 차단된 것이었습니다. 방화벽 규칙을 새로 생성해 적용하고 나서야 Zabbix 서버와 정상적으로 연결이 되었는데요, 이 과정에서 방화벽 설정의 중요성을 다시 한번 깨달았습니다. 오늘은 앞으로 비슷한 문제 해결을 위해 GCP 네트워크와 방화벽을 정리해 보겠습니다.*Zabbix: 서버 및 네트워크의 상태를 실시간으로 모니터링할 수 있는 오픈소스 기반의 모니터링 툴 1. GCP 네트워크1-1. VPC 공식 문서에서는 Virtual Private Cloud(VPC) 네트워크를 구글의 프로덕션 네트..
2025.03.30 23:05 -
BigQuery에서 Nested Data의 처리: Dremel 논문으로 이해하기②🕵️♀️
들어가며 지난 글에서는 Dremel 논문[1]을 통해서 Nested Data(중첩 데이터)를 저장하기 위한 아이디어인 반복 레벨과 정의 레벨에 대해 살펴보았습니다. 오늘은 논문의 뒷부분인 반복 레벨과 정의 레벨을 이용해 효율적으로 column stripe를 생성하는 방법과 이를 다시 레코드로 바꾸는 방법을 알아보도록 하겠습니다. 그리고 이렇게 만들어진 레코드를 어떻게 쿼리로 처리하는지까지 살펴보도록 하겠습니다.*column stripe: 컬럼 기반 저장 방식에서 데이터를 나누는 단위. ✅ 레코드 -> 컬럼 Google에서 사용하는 많은 데이터는 희소한(Sparse) 형태, 예를 들자면 수천 개의 필드 중 실제로 값이 존재하는 필드는 백개 정도에 불과하는 형태를 갖고 있었습니다. 때문에 사용되는 필..
2025.03.16 18:41 -
BigQuery에서 Nested Data의 처리: Dremel 논문으로 이해하기①🕵️♀️
들어가며 빅쿼리로 수집되는 서비스의 데이터를 보면 > 와 같은 데이터 타입을 자주 볼 수 있습니다. 복잡한 데이터 구조를 효율적으로 저장하고 처리하기 위해 이러한 타입이 사용되는데요, 지난주에도 평소와 같이 데이터를 조회하다가 문득 이런 생각이 들었습니다.컬럼 기반 스토리지에서는 중첩된 데이터를 어떻게 처리할까? 컬럼 기반 스토리지는 각 컬럼을 따로 저장해서 압축률을 높이고 조회 성능을 최적화하는데요, STRUCT나 ARRAY와 같이 중첩되고 반복되는 데이터는 단순한 구조가 아니어서 궁금증이 생겼습니다. 이를 이해하기 위해 BigQuery의 기반이 되는 Dremel이 어떻게 Nested Data를 다루는지 알아보았습니다. Dremel의 등장 : Nested Data를 다루는 방법 Dremel은 구글이 2..
2025.03.02 22:29 -
토스 SLASH 24 리뷰: 토스 증권의 DW 설계 및 운영에서 배운 점 (AU 파이프라인 개선 사례)
들어가며 작년부터 팀에서는 각 서비스의 주요 지표를 직접 생성하기 시작했습니다. 기존에는 마케팅, 사업부 등 각 부서의 요청에 따라 애드혹(Ad-hoc) 방식으로 데이터를 추출하거나 대시보드를 제공했지만, 현재 팀의 목표는 이에 더해 선제적으로 주요 지표를 제공하여 더 다양한 의사결정을 지원하는 것입니다. 이러한 변화 속에서 다른 화사들은 DW(Data Warehouse)를 어떻게 설계하고 운영하는지에 대한 궁금증이 많았습니다. 그러다 토스 SLASH 24의 전천후 데이터 분석을 위한 DW 설계 및 운영하기 발표를 접하게 되었는데요, 이번 글에서는 발표 내용을 정리하고 팀에 어떻게 적용할 수 있을지 생각해 본 내용을 적어보겠습니다. 토스 증권의 AU 파이프라인토스 증권에서는 다양한 패턴(방문 일자..
2025.02.16 23:24 -
Kafka와 BigQuery를 활용한 데이터 파이프라인을 개선해보자☘️ (feat. MERGE문)
들어가며 현재 제가 속한 데이터 팀에서는 준실시간 분석 요청에 대응하기 위해 Kafka와 BigQuery를 활용한 CDC 기반 데이터 파이프라인을 구축하고 있습니다. 그러나 Kafka 커넥터를 사용하는 과정에서 데이터 규모 증가로 인한 비용 문제 발생 가능성이 제기되었습니다. 이번 글에서는 Kafka 커넥터와 BigQuery MERGE 문을 사용한 기존 파이프라인의 한계를 살펴보고, 이를 개선하기 위해 테스트한 과정을 공유하고자합니다. ✔️ CDC(Change Data Capture) 이름 그대로 데이터 베이스의 변경 사항을 실시간으로 추적하고 캡처하는 기술입니다. 데이터 웨어하우스 등 시스템으로의 동기화에 사용됩니다. 실시간 분석, 이벤트 기반 아키텍처 등에 활용할 수 있습니다. 1. 기존 구조Ka..
2025.01.19 23:58