GA4 BigQuery 갱신 타이밍

GA4 빅쿼리 데이터 갱신 타이밍 살펴보기

빅쿼리를 사용하다보면 가장 문제가되는 부분이 데이터 갱신 타이밍입니다. 이번 글에서는 빅쿼리 데이터 갱신 시점을 알아보고 대시보드 갱신 등을 위해 어떤 전략을 가져가야 하는지 알아보도록 하겠습니다.

 

빅쿼리 데이터 내보내기 유형

GA4 빅쿼리 내보내기 방식

빅쿼리를 사용할 때 대표적인 내보내기 유형은 총 2개가 존재합니다. 스크린샷 처럼 매일 그리고 스트리밍 이 있는데요 간략하게 알아보자면 아래와 같습니다.

  • 매일: 하루에 한 번 데이터 전체가 내보내집니다. 즉 오늘 데이터는 내일 빅쿼리에 적재되어 사용할 수 있게 됩니다.
  • 스트리밍(최대의 성능): 빅쿼리 스트리밍 데이터 업로드 방식으로 몇초 ~ 수분 이내에 사이트에 쌓인 데이터가 빅쿼리로 바로 전송됩니다. 즉 실시간 분석이 필요한 경우 사용할 수 있습니다.

 

그리고 여기서 추가적인 차이가 더 존재하는데요 빅쿼리에 적재되는 데이터가 기본적으로는 GA4의 로우 데이터긴 하지만 트래픽 소스 데이터와 같이 이전 정보를 토대로 새로 생기는 테이블에 적재되는 데이터들이 있습니다. 그런 데이터들은 스트리밍에서 제외되기 때문에 두 방식에는 데이터에서도 다소 차이가 있습니다. 예시를 들어 설명하자면, 다음과 같습니다.

GA4에서는 기본적으로 최초 접속했던 소스와 매체값을 사용자에게 전달하는데요 BigQuery에서도 해당 값을 데이터에서 활용할 수 있습니다. 하지만 이 값은 과거의 데이터를 조회해서 붙여줘야하는 값이기 때문에 스트리밍으로 바로 처리하기는 어렵습니다. 그러다보니 스트리밍데이터에서는 이 정보가 빠져있는 것 입니다.

 

일반적으로 위에서 설명한 이런 차이점이 존재합니다. 사실 오늘 알아보려는 주제에서 스트리밍은 크게 문제가 되지 않습니다. ‘매일’유형이 문제인데요 좀더 자세히 알아보겠습니다.

 

‘매일’ 유형이 들어오는 시간이 일정하지 않은 이유

사실 해당 이유에 대해서는 공식적인 이유는 없지만 아래와 같은 이유를 추측해볼 수 있습니다.

  1. 지역 전체 트래픽에 따른 GA4 데이터 처리 지연
  2. 우리 사이트의 트래픽 증가에 따른 처리시간 지연

 

사실 가장 유력할텐데요 우선 내 사이트의 데이터가 처리되는데 당연히 우리 회사를 위한 데이터 처리 서버들이 준비되어있지 않을 것 입니다. 특정 지역 내에서 데이터가 처리될 것이고 해당 지역에서 모인 수많은 데이터들이 함께 처리될 텐데요 유지보수 라던가 서버의 장애, 인터넷 문제, 전체적인 지역의 트래픽 증가 등 요인이 있을 수 있을 것 입니다. 또한 우리 사이트 내에 처리해야하는 데이터 양이 증가한다면 그것도 다소 이유가 될 수 있겠죠?

 

물론 그럴 수 있는 문제입니다. 하지만 그러다보니 GA4데이터를 통해 분석을 하거나 대시보드를 구축할 때 스케쥴링 기능 등을 활용하기가 어려운게 가장 큰 문제입니다! 가령 아침에 데이터를 볼 수 없다는 것은 인정 하더라도, 오늘 데이터가 들어왔을 때 그 시점에 데이터가 처리되고 자동으로 분석 프로세스가 진행되거나, 대시보드에 나타나거나, 알람을 주면 얼마나 좋을까요? 이런 것들이 불가능 하다보니 GA4 빅쿼리를 Advanced하게 활용하는데 어려움이 생기게 됩니다.

 

GA4의 지연 수집으로 인한 빅쿼리 데이터 변화

또한 한가지 문제가 더 존재하는데요 빅쿼리 데이터가 최대 3일간 변할 수 있다는 것을 알고계신가요? 7/24일에 23일 데이터가 적재돼서 테이블이 생겼다 하더라도 7/25일에도 23일 데이터에 대한 업데이트 가 있을 수 있습니다.

이는 지연수집 문제 때문인데요 GA4는 원래 Firebase Analytics가 모체라고 할 수 있습니다. 여기서 Firebase는 본래 앱 개발을 위한 서비스입니다. 그러다보니 앱에서 ‘지연수집’이라는 개념을 사용합니다. GA4를 앱에 설치해신 분들은 아시겠지만, 사용자가 데이터를 발생시킬 때 마다 데이터가 GA4의 실시간이 잡히지 않습니다. 여러 행동을 하고 그 행동이 ‘전송 조건’을 만족할 때 GA4로 다발로 전달됩니다. 즉 제가 앱에서 페이지뷰를 10번 발동시키고 이벤트를 5번 발동시켰다면 총 15개의 이벤트가 한번에 전송되는 현상이 있는거죠. 이는 쓸데 없이 많은 전송을 발생시키지 않기 위한 전략 중 하나입니다. 하여튼 이런 일로 인해 어플리케이션 데이터가 실제 발생한 시점보다 꽤 늦게 GA4로 전송될 수 있고 GA4는 이에대한 데이터 유실을 최소화 하기 위해 업데이트 된 데이터를 다시 BigQuery에 덮어씌우는 것이죠.  이로인해 전체적인 데이터 분석에 영향은 없을 수 있지만, 그래도 알고 있어야 하는 내용입니다.

 

해결할 수 있는 방법은 없을까요?

두 가지 방법이 있습니다.

첫 번째는 그냥 스트리밍 데이터를 활용하는 것 입니다. 스트리밍 데이터는 어쨋던 결국 정상적인 시간에 필요한 데이터가 적재돼있는 상태이고 필요한 데이터가 테이블에 모두 있다면 스트리밍 데이터만으로도 충분히 분석을 진행할 수 있습니다.

 

두 번째는 GCP를 적극 활용하는 것 입니다. 이후 다른 글을 통해 소개해드리겠지만, GA4가 BigQuery테이블을 생성하거나 혹은 업데이트 하는 시점을 GCP에서 트리거로 캐치할 수 있습니다. 그 타이밍에 Query를 발동시켜 루커스튜디오의 데이터를 업데이트한다거나, 분석 프로세스를 돌아가게 한다거나 혹은 사용자에게 데이터가 업데이트되었다는 알람을 보낼 수 있게 됩니다.

따라서 데이터를 꼭 가장 빠른 시간에 받아서 분석하고 싶은 사람에게는 아주 좋은 방법이 될 수 있습니다.

 

GA4 Bigquery 내보내기

최종적으론 위와 같은 구조가 되는데요 자세한 내용은 다음 글에서 전달드리도록 하겠습니다 🙂

 

빅쿼리가 궁금하신 분들은 아래 링크를 통해 PLUS ZERO 유튜브에 방문해보세요!

https://www.youtube.com/@pluszeroinc

 

GA4가 궁금하신 분들은 아래 글을 우선 참고해보세요!

GA4 데이터 스트림 심층 가이드

 

Popular & Related Posts

GA4 데이터 스트림(Data Stream) 심층가이드 | 플러스제로

Google Analytics

2025년 1월

GA4 데이터 스트림 심층 가이드

웹부터 앱까지 모든 사용자 활동을 한눈에 파악하고 싶다면? GA4 데이터 스트림의 강력한 통합 분석 기능으로 더 깊은 인사이트를 얻고, 성공적인 마케팅 전략을 펼쳐보세요.
GA4 계층 구조 이해하기 - 계정, 속성, 데이터 스트림

Google Analytics

2025년 1월

GA4 계층 구조 이해하기

GA4 계층 구조의 계정(Account), 속성(Property), 데이터 스트림(Data Stream)을 이해고, 비즈니스와 분석 목표에 따라 GA4를 설정해보세요!
ga4 데이터 수집 프로세스

Google Analytics

2025년 2월

GA4 데이터 수집 프로세스

GA4 데이터 수집 프로세스는 웹사이트(gtag.js)와 앱(Firebase SDK)을 통해 이벤트를 기록하고 분석하며, GTM으로 태그를 효율적으로 관리하고 맞춤 이벤트를 설정합니다.