arrow_back

Google Cloud 기초: BigQuery 시작하기

로그인 가입
지식을 테스트하고 커뮤니티와 공유하기
done
700개 이상의 실무형 실습, 기술 배지, 과정에 액세스

Google Cloud 기초: BigQuery 시작하기

실습 30분 universal_currency_alt 크레딧 5개 show_chart 입문
info 이 실습에는 학습을 지원하는 AI 도구가 통합되어 있을 수 있습니다.
지식을 테스트하고 커뮤니티와 공유하기
done
700개 이상의 실무형 실습, 기술 배지, 과정에 액세스

개요

이번 실습에서는 BigQuery 테이블에 웹 서버 로그를 로드해보고, 데이터를 로드한 후에는 BigQuery 웹 사용자 인터페이스 및 BigQuery CLI를 사용해 이 데이터를 쿼리하겠습니다.

BigQuery를 사용하면 페타바이트 규모의 데이터베이스를 양방향으로 분석할 수 있으며 거의 실시간으로 대규모 데이터 세트를 분석할 수도 있습니다. 또한 널리 사용되는 SQL 2011 쿼리 언어 및 함수를 제공합니다.

BigQuery에 저장된 데이터는 내구성이 매우 우수합니다. Google은 기본적으로 사용자의 데이터를 복제하여 저장하며 복제본에 대한 비용은 청구하지 않습니다. BigQuery는 사용한 리소스의 비용만 지불하면 됩니다. BigQuery 데이터 스토리지는 저렴합니다. 쿼리 비용은 처리되는 데이터의 양에 따라 청구됩니다. 쿼리를 제출하고 나면 쿼리 시간의 컴퓨팅 노드만큼의 비용만 지불하면 되고 컴퓨팅 클러스터를 계속 실행시키기 위한 비용은 지불하지 않아도 됩니다.

BigQuery를 사용하다 보면 프로젝트(이 과정의 다른 부분에서 학습), 데이터 세트, 테이블, 작업 등 여러 가지 Google Cloud Platform 리소스와 상호작용하게 됩니다. 이 실습에서는 이러한 리소스 중 몇 가지를 소개하고, 간단한 소개를 통해 BigQuery와 상호작용할 때의 역할을 요약해서 보여줍니다.

데이터 세트: 데이터 세트는 0개 이상의 테이블을 포함하는 그룹화 메커니즘입니다. 데이터 세트는 액세스 제어에서 가장 낮은 수준의 단위입니다. 데이터 세트는 GCP 프로젝트에서 소유하며 각 데이터 세트는 개별 사용자와 공유할 수 있습니다.

테이블: 테이블은 행과 열로 구성된 구조로서 실제 데이터를 포함하고 있습니다. 각 테이블에는 강력하게 유형화된 값의 열을 설명하는 스키마가 있고 모든 테이블은 데이터 세트에 속해 있습니다.

목표

이번 실습에서는 다음 작업의 실행 방법을 알아봅니다.

  • Cloud Storage에서 BigQuery로 데이터를 로드합니다.

  • BigQuery에 있는 데이터에 쿼리합니다.

작업 1: Google Cloud Platform(GCP) Console에 로그인

각 실습에서는 정해진 기간 동안 새 Google Cloud 프로젝트와 리소스 집합이 무료로 제공됩니다.

  1. 시크릿 창을 사용하여 Qwiklabs에 로그인합니다.

  2. 실습 사용 가능 시간(예: 1:15:00)을 참고하여 해당 시간 내에 완료합니다.
    일시중지 기능은 없습니다. 필요한 경우 다시 시작할 수 있지만 처음부터 시작해야 합니다.

  3. 준비가 되면 실습 시작을 클릭합니다.

  4. 실습 사용자 인증 정보(사용자 이름비밀번호)를 기록해 두세요. Google Cloud Console에 로그인합니다.

  5. Google Console 열기를 클릭합니다.

  6. 다른 계정 사용을 클릭한 다음, 안내 메시지에 실습에 대한 사용자 인증 정보를 복사하여 붙여넣습니다.
    다른 사용자 인증 정보를 사용하는 경우 오류가 발생하거나 요금이 부과됩니다.

  7. 약관에 동의하고 리소스 복구 페이지를 건너뜁니다.

할당받은 리전이 미국 또는 유럽과 가까운지 기록해 둡니다.

작업 2: Cloud Storage에서 BigQuery로 데이터 로드

  1. 콘솔의 탐색 메뉴(탐색 메뉴)에서 BigQuery > 완료를 클릭합니다.

  2. 탐색기 섹션의 프로젝트 ID 옆에서 작업 보기 아이콘을 눌러 프로젝트 내에 새로운 데이터 세트를 만듭니다. 그런 다음 데이터 세트 만들기를 선택합니다.

  3. 데이터 세트 만들기 대화상자의 데이터 세트 IDlogdata를 입력합니다.

  4. 데이터 위치미국(US)을 선택합니다. 데이터 세트 만들기를 클릭합니다.

  5. logdata에 새 테이블을 만들어 CSV 파일의 데이터를 저장합니다.

  6. 프로젝트 ID를 펼치고 logdata 데이터 세트 옆에 있는 작업 보기 아이콘을 클릭합니다. 그런 다음 열기를 선택합니다.

  7. 테이블 만들기를 클릭합니다. 테이블 만들기 페이지의 소스 섹션에서 다음을 실행합니다.

  • 다음 항목으로 테이블 만들기에서 Google Cloud Storage를 선택한 후 필드에 gs://cloud-training/gcpfci/access_log.csv라고 입력합니다.
  • 파일 형식CSV로 설정되어 있는지 확인합니다.
참고: 이전에 테이블을 만들었다면 '이전 작업에서 만들기' 옵션을 사용하여 사용자 설정으로 유사한 테이블을 빨리 만들 수 있습니다.
  1. 대상 섹션에서 다음을 수행합니다.

  • 데이터 세트 이름logdata가 선택된 상태로 둡니다.

  • 테이블 이름에는 accesslog라고 입력합니다.

  • 테이블 유형에서 기본 테이블을 선택해야 합니다.

  1. 스키마 섹션의 자동 감지에서 스키마 및 입력 매개변수를 선택합니다.

  2. 나머지는 기본값을 적용하고 테이블 만들기를 클릭합니다.

    BigQuery에서 테이블을 만들고 여기에 데이터를 업로드하기 위한 로드 작업이 생성됩니다(몇 초 정도 걸릴 수 있음).

  3. (선택사항) 작업 진행 상황을 추적하려면 작업 기록을 클릭합니다.

  4. 로드 작업이 완료되면 logdata > accesslog를 클릭합니다.

  5. 테이블 세부정보 페이지에서 세부정보를 클릭하여 테이블 속성을 본 다음 미리보기를 클릭하여 테이블 데이터를 봅니다.

    이 테이블에 있는 각 행은 웹 서버의 조회 로그를 나타냅니다. 첫 번째 필드의 string_field_0은 클라이언트의 IP 주소입니다. 4~9번째 필드는 조회가 발생한 일, 월, 연도, 시간, 분, 초의 로그입니다. 이 활동에서는 웹 서버의 일일 로드 패턴에 관해 알아봅니다.

진행 상황 확인을 클릭하여 목표를 확인합니다. Cloud Storage에서 BigQuery로 데이터를 로드

작업 3: BigQuery 웹 UI를 사용해 데이터 쿼리

이 실습 섹션에서는 BigQuery 웹 UI를 사용해 이전에 만든 accesslog 테이블에 쿼리합니다.

  1. 쿼리 편집기 창에 다음 쿼리를 입력하거나 복사하여 붙여넣습니다.

  2. BigQuery에 데이터 로드 시 자동으로 스키마를 조회하라고 지시했기 때문에 웹 조회가 도착한 시간대가 int_field_6 필드에 표시됩니다.

    select int64_field_6 as hour, count(*) as hitcount from logdata.accesslog
    group by hour
    order by hour
    

    쿼리 검사기에서 쿼리 구문이 유효(초록색 체크표시로 표시됨)함을 알 수 있으며 쿼리에서 처리할 데이터 양이 표시됩니다. 처리될 데이터 양을 고려해 Cloud Platform 가격 계산기를 사용하면 쿼리 가격을 알 수 있습니다.

  3. 실행을 클릭하고 결과를 확인합니다. 웹사이트 조회 수가 가장 많은 시간대는 언제인가요? 조회 수가 가장 적은 시간대는 언제인가요?

작업 4: bq 명령어를 사용해 데이터 쿼리

이 실습 섹션에서는 Cloud Shell에서 bq 명령어를 사용해 이전에 만든 accesslog 테이블에 쿼리합니다.

  1. Google Cloud Platform Console에서 Cloud Shell 활성화 Cloud Shell 활성화 계속을 클릭합니다.

  2. Cloud Shell 프롬프트에 다음 명령어를 입력합니다.

    bq query "select string_field_10 as request, count(*) as requestcount from logdata.accesslog group by request order by requestcount desc"
    

    bq 명령어를 처음으로 사용하면 Google Cloud Platform 사용자 인증 정보를 파악한 다음 기본 프로젝트를 선택하라고 요청합니다. Qwiklabs에서 할당받은 프로젝트를 선택합니다. 프로젝트 이름은 qwiklabs-gcp-에 16진수 숫자가 붙은 형식입니다.

    그러면 bq 명령어가 명령줄에서 요청된 작업을 실행합니다. 웹 서버에서 제공된 URL 중 가장 인기 있었던 URL은 무엇인가요? 가장 인기가 없었던 URL은 무엇인가요?

수고하셨습니다.

이번 실습에서는 Cloud Storage에 저장된 데이터를 Google BigQuery에 호스팅된 테이블에 로드해봤습니다. 그런 다음 데이터를 쿼리하여 패턴을 확인했습니다.

실습 종료하기

실습을 완료하면 실습 종료를 클릭합니다. Google Cloud Skills Boost에서 사용된 리소스를 자동으로 삭제하고 계정을 지웁니다.

실습 경험을 평가할 수 있습니다. 해당하는 별표 수를 선택하고 의견을 입력한 후 제출을 클릭합니다.

별점의 의미는 다음과 같습니다.

  • 별표 1개 = 매우 불만족
  • 별표 2개 = 불만족
  • 별표 3개 = 중간
  • 별표 4개 = 만족
  • 별표 5개 = 매우 만족

의견을 제공하고 싶지 않다면 대화상자를 닫으면 됩니다.

의견이나 제안 또는 수정할 사항이 있다면 지원 탭을 사용하세요.

Copyright 2020 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.

현재 이 콘텐츠를 이용할 수 없습니다

이용할 수 있게 되면 이메일로 알려드리겠습니다.

감사합니다

이용할 수 있게 되면 이메일로 알려드리겠습니다.