BigQuery의 CrUX

BigQuery에서 CrUX 데이터가 구조화되는 방식을 알아봅니다.

소개

Chrome UX Report (CrUX)의 원시 데이터는 Google Cloud에서 호스팅되는 데이터베이스인 BigQuery에서 확인할 수 있습니다.

BigQuery의 CrUX를 사용하면 사용자가 2017년까지 거슬러 올라가는 전체 데이터 세트를 직접 쿼리하여 추세를 분석하고, 웹 기술을 비교하고, 도메인을 벤치마킹할 수 있습니다.

데이터는 월별 출시와 함께 데이터를 쿼리하기 위한 빠른 액세스를 제공하는 여러 요약 테이블로 구성됩니다.

BigQuery 데이터는 SQL 쿼리를 작성하지 않고도 이 데이터를 시각화할 수 있는 CrUX 대시보드의 기반입니다.

데이터 세트 액세스

BigQuery를 사용하려면 Google Cloud 계정과 SQL에 대한 기본 지식이 필요합니다. BigQuery의 CrUX 데이터 세트는 BigQuery에서 제공하며 매월 갱신되는 무료 등급의 한도까지 무료로 액세스하고 탐색할 수 있습니다. 또한 신규 Google Cloud 사용자는 무료 등급을 초과하는 비용을 충당하기 위해 가입 크레딧을 사용할 수 있습니다. Google Cloud 프로젝트에 신용카드를 제공해야 합니다(신용카드를 제공해야 하는 이유는 무엇인가요? 참고).

BigQuery를 처음 사용하는 경우 다음 단계에 따라 프로젝트를 설정하세요.

  1. Google Cloud 콘솔에서 프로젝트 만들기로 이동합니다.
  2. 새 프로젝트에 '내 Chrome UX 보고서'와 같은 이름을 지정하고 만들기를 클릭합니다.
  3. 메시지가 표시되면 결제 정보를 입력합니다.
  4. BigQuery의 CrUX 데이터 세트로 이동합니다.

이제 데이터 세트를 쿼리할 준비가 되었습니다.

프로젝트 조직

BigQuery의 CrUX 데이터는 다음 달 둘째 주 화요일에 출시됩니다. 각 월은 chrome-ux-report.all 아래에 새 테이블로 출시됩니다. 매월 요약 통계를 제공하는 구체화된 테이블도 있습니다.

세부 테이블 스키마

각 국가의 원시 테이블과 all 데이터 세트는 연도와 월별로 제공됩니다.

원시 테이블

원시 테이블에는 다음 스키마가 있습니다.

  • origin
  • effective_connection_type
  • form_factor
  • first_paint
  • first_contentful_paint
  • largest_contentful_paint
  • dom_content_loaded
  • onload
  • layout_instability
    • cumulative_layout_shift
  • interaction_to_next_paint
  • round_trip_time
  • navigation_types
    • navigate
    • navigate_cache
    • reload
    • restore
    • back_forward
    • back_forward_cache
    • prerender
  • experimental
    • permission
      • notifications
    • time_to_first_byte
    • popularity

구체화된 테이블 스키마

여러 주요 측정기준별로 요약 데이터에 더 쉽게 액세스할 수 있도록 구체화된 표가 제공됩니다. 히스토그램은 제공되지 않으며 대신 성능 데이터가 성능 평가 및 75번째 백분위수 값에 따라 분수로 집계됩니다. 이 예시에는 metrics_summary 테이블의 예시 행 집합이 표시되어 있습니다.

yyyymm origin fast_lcp avg_lcp slow_lcp p75_lcp
202204 https://example.com 0.9056 0.0635 0.0301 1600
202203 https://example.com 0.9209 0.052 0.0274 1400
202202 https://example.com 0.9169 0.0545 0.0284 1500
202201 https://example.com 0.9072 0.0626 0.0298 1500

202204 데이터 세트에서 https://example.com의 실제 사용자 경험 중 90.56% 가 양호한 LCP 기준을 충족했으며 대략적인 75번째 백분위수 LCP 값은 1,600ms였습니다. 이는 이전 달보다 약간 느린 속도입니다.

다음과 같은 네 개의 구체화된 테이블이 제공됩니다.

metrics_summary
월별 및 출처별 주요 측정항목
device_summary
주요 측정항목을 월, 출처, 기기 유형별로
country_summary
월, 출처, 기기 유형, 국가별 주요 측정항목
origin_summary
데이터 세트에 포함된 모든 출처의 목록

metrics_summary

metrics_summary 테이블에는 각 출처와 각 월별 데이터 세트에 대한 요약 통계가 포함됩니다.

yyyymm
데이터 수집 기간의 월
origin
사이트 출처의 URL
rank
대략적인 인기 순위 (2021년 3월 기준)
[small|medium|large]_cls
CLS 기준별 트래픽 비율
[fast|avg|slow]_<metric>
성능 기준별 트래픽 비율
[low|medium|high]_rtt
RTT 기준별 트래픽 비율
p75_<metric>
성능 측정항목의 75번째 백분위수 값 (밀리초)
notification_permission_[accept|deny|ignore|dismiss]
알림 권한 동작의 비율
[desktop|phone|tablet]Density
폼 팩터별 트래픽 비율
[_4G|_3G|_2G|slow2G|offline]Density
유효 연결 유형별 트래픽 비율(오프라인 없이 2025년 2월부터 rtt 히스토그램에서 계산)
navigation_type_[navigate|navigate_cache|reload|restore|back_forward|back_forward_cache|prerender]
탐색 유형의 비율

device_summary

device_summary 표에는 월, 출처, 국가, 기기별로 집계된 통계가 포함됩니다. metrics_summary 열 외에도 다음이 있습니다.

device
기기 폼 팩터

country_summary

country_summary 표에는 월, 출처, 국가, 기기별로 집계된 통계가 포함됩니다. metrics_summary 열 외에도 다음이 있습니다.

country_code
두 글자 국가 코드
device
기기 폼 팩터

origin_summary

origin_summary 테이블에는 CrUX 데이터 세트의 모든 출처 목록이 포함되어 있습니다. 이 테이블은 데이터 세트의 최신 출처 목록으로 매달 업데이트되며 origin이라는 단일 열이 있습니다.

실험 데이터 세트

실험용 데이터 세트의 테이블은 기본 YYYYMM 테이블의 정확한 사본이지만, 더 빠르고 간단하며 저렴한 쿼리를 작성할 수 있는 파티셔닝클러스터링과 같은 최신 고급 BigQuery 기능을 사용합니다.

country

experimental.country 데이터 세트에는 데이터 세트 날짜를 위한 추가 yyyymm 열과 함께 country_CC 데이터 세트의 집계된 데이터가 포함됩니다. 스키마는 원시 테이블과 동일하며, 날짜 및 country_code 열이 추가되어 월별 테이블을 조인하지 않고도 시간 경과에 따른 국가 수준 비교 쿼리를 실행할 수 있습니다.

global

experimental.global 데이터 세트에는 데이터 세트 날짜를 위한 추가 yyyymm 열과 함께 all 데이터 세트의 집계 데이터가 포함됩니다. 스키마는 원시 테이블과 동일하며 날짜가 추가되어 월별 테이블을 조인하지 않고도 시간 경과에 따른 비교 쿼리를 실행할 수 있습니다.