Data Engineering/BigQuery(6)
-
BigQuery INFORMATION SCHEMA 활용해 사용량 파악하기
들어가며현재 사내에서는 구성원들이 BigQuery를 통해 직접 쿼리를 실행하고 있습니다. 하지만 팀에서 예상하지 못한 방식으로 테이블이 조회되는 경우가 종종 있는데요, 비용 문제 뿐만 아니라 테이블의 설계, 사용자 계정 권한 문제와도 연관있기 때문에 모니터링이 필요했습니다. 오늘은 BigQuery INFORMATION_SCHEMA를 활용해 실시간으로 빅쿼리 사용을 파악하는 방법을 정리해 보겠습니다. 제가 모니터링을 살펴보기 전부터 팀에는 Google Cloud Monitoring을 통해 1TB 이상 사용량이 감지되면 슬랙 알림이 전송되도록 설정되어 있었습니다. 하지만 시간이 지나면서 몇 가지 문제가 발생했습니다. 데이터를 활용하는 팀이 많아지며 알림이 자주 발생했습니다알림 메시지만으로는 쿼리 원인을 세..
2025.09.14 -
BigQuery에서 Nested Data의 처리: Dremel 논문으로 이해하기②🕵️♀️
들어가며 지난 글에서는 Dremel 논문[1]을 통해서 Nested Data(중첩 데이터)를 저장하기 위한 아이디어인 반복 레벨과 정의 레벨에 대해 살펴보았습니다. 오늘은 논문의 뒷부분인 반복 레벨과 정의 레벨을 이용해 효율적으로 column stripe를 생성하는 방법과 이를 다시 레코드로 바꾸는 방법을 알아보도록 하겠습니다. 그리고 이렇게 만들어진 레코드를 어떻게 쿼리로 처리하는지까지 살펴보도록 하겠습니다.*column stripe: 컬럼 기반 저장 방식에서 데이터를 나누는 단위. ✅ 레코드 -> 컬럼 Google에서 사용하는 많은 데이터는 희소한(Sparse) 형태, 예를 들자면 수천 개의 필드 중 실제로 값이 존재하는 필드는 백개 정도에 불과하는 형태를 갖고 있었습니다. 때문에 사용되는 필..
2025.03.16 -
BigQuery에서 Nested Data의 처리: Dremel 논문으로 이해하기①🕵️♀️
들어가며 빅쿼리로 수집되는 서비스의 데이터를 보면 > 와 같은 데이터 타입을 자주 볼 수 있습니다. 복잡한 데이터 구조를 효율적으로 저장하고 처리하기 위해 이러한 타입이 사용되는데요, 지난주에도 평소와 같이 데이터를 조회하다가 문득 이런 생각이 들었습니다.컬럼 기반 스토리지에서는 중첩된 데이터를 어떻게 처리할까? 컬럼 기반 스토리지는 각 컬럼을 따로 저장해서 압축률을 높이고 조회 성능을 최적화하는데요, STRUCT나 ARRAY와 같이 중첩되고 반복되는 데이터는 단순한 구조가 아니어서 궁금증이 생겼습니다. 이를 이해하기 위해 BigQuery의 기반이 되는 Dremel이 어떻게 Nested Data를 다루는지 알아보았습니다. Dremel의 등장 : Nested Data를 다루는 방법 Dremel은 구글이 2..
2025.03.02 -
Kafka와 BigQuery를 활용한 데이터 파이프라인을 개선해보자☘️ (feat. MERGE문)
들어가며 현재 제가 속한 데이터 팀에서는 준실시간 분석 요청에 대응하기 위해 Kafka와 BigQuery를 활용한 CDC 기반 데이터 파이프라인을 구축하고 있습니다. 그러나 Kafka 커넥터를 사용하는 과정에서 데이터 규모 증가로 인한 비용 문제 발생 가능성이 제기되었습니다. 이번 글에서는 Kafka 커넥터와 BigQuery MERGE 문을 사용한 기존 파이프라인의 한계를 살펴보고, 이를 개선하기 위해 테스트한 과정을 공유하고자합니다. ✔️ CDC(Change Data Capture) 이름 그대로 데이터 베이스의 변경 사항을 실시간으로 추적하고 캡처하는 기술입니다. 데이터 웨어하우스 등 시스템으로의 동기화에 사용됩니다. 실시간 분석, 이벤트 기반 아키텍처 등에 활용할 수 있습니다. 1. 기존 구조Ka..
2025.01.19 -
데이터 분석의 경계에 선 엔지니어의 <인프런 BigQuery(SQL) 활용편>후기 (feat. 빠짝 스터디)🌱
들어가며 최근 업무에서 빅쿼리를 더 효과적으로 활용하는 방법을 고민하던 중 글또에서 성윤님(aka. 카일스쿨)의 인프런 강의 챌린지 소식을 듣게 되었어요. 일명 '빠짝 스터디'라는 이름으로 4주간 BigQuery 활용편 강의를 집중해 수강하는 프로그램이었는데요, 제가 관심있게 본 강의였고 30% 할인 쿠폰까지 제공되어 망설임 없이 신청했답니다.오늘은 강의를 선택한 이유와 스터디에서 배운 것들, 오프라인 모임에 다녀온 이야기까지 공유해보도록 할게요. 1. 강의를 듣게 된 이유 제가 속한 데이터 팀에는 분석가가 없어 직접 서비스의 지표를 구해야 하는 일이 종종 있어요. 일을 하다 보니 단순히 SQL 쿼리를 작성하는데 그치지 않고 데이터 분석의 개념과 흐름을 이해하고 싶은 생각이 들더라구요. 빅쿼리 활용편 ..
2024.11.24