Bigtable 변경 내역을 BigQuery로 스트리밍 템플릿 사용

이 빠른 시작에서는 변경 내역이 사용 설정된 Bigtable 테이블을 설정하고, 변경 내역 파이프라인을 실행하고, 테이블을 변경하고, 스트리밍되는 변경사항을 확인하는 방법을 알아봅니다.

시작하기 전에

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  3. Enable the Dataflow, Cloud Bigtable API, Cloud Bigtable Admin API, and BigQuery APIs.

    Enable the APIs

  4. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

BigQuery 데이터 세트 만들기

Google Cloud 콘솔을 사용하여 데이터를 저장하는 데이터 세트를 만듭니다.

  1. Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트 이름을 클릭합니다.

  3. 작업 옵션을 펼치고 데이터 세트 만들기를 클릭합니다.

  4. 데이터 세트 만들기 페이지에서 다음을 수행합니다.

    1. 데이터 세트 IDbigtable_bigquery_quickstart를 입력합니다.
    2. 나머지 기본 설정은 그대로 두고 데이터 세트 만들기를 클릭합니다.

변경 내역이 사용 설정된 테이블 만들기

  1. Google Cloud 콘솔에서 Bigtable 인스턴스 페이지로 이동합니다.

    인스턴스로 이동

  2. 이 빠른 시작에서 사용 중인 인스턴스의 ID를 클릭합니다.

    사용 가능한 인스턴스가 없는 경우 가까운 리전의 기본 구성으로 인스턴스를 만듭니다.

  3. 왼쪽 탐색창에서 테이블을 클릭합니다.

  4. 테이블 만들기를 클릭합니다.

  5. 테이블 이름을 bigquery-changestream-quickstart로 지정합니다.

  6. cf라는 column family를 추가합니다.

  7. 변경 내역 사용 설정을 선택합니다.

  8. 만들기를 클릭합니다.

  9. Bigtable 테이블 페이지에서 bigquery-changestream-quickstart 테이블을 찾습니다.

  10. 변경 내역 열에서 연결을 클릭합니다.

  11. 대화상자에서 BigQuery를 선택합니다.

  12. Dataflow 작업 만들기를 클릭합니다.

  13. 제공된 매개변수 필드에 매개변수 값을 입력합니다. 선택적 매개변수를 제공할 필요가 없습니다.

    1. Bigtable 애플리케이션 프로필 ID를 default로 설정합니다.
    2. BigQuery 데이터 세트를 bigtable_bigquery_quickstart로 설정합니다.
  14. 작업 실행을 클릭합니다.

  15. 작업 상태가 시작 중 또는 실행 중이 될 때까지 기다린 후에 진행합니다. 작업이 큐에 추가되면 5분 정도 걸립니다.

  16. 리소스를 정리할 때 작업을 중지할 수 있도록 탭에서 작업을 열어 둡니다.

Bigtable에 일부 데이터 쓰기

  1. Cloud Shell에서 변경 로그가 일부 데이터를 BigQuery에 쓸 수 있도록 행 몇 개를 Bigtable에 씁니다. 작업이 생성된 후 데이터를 쓰면 변경사항이 표시됩니다. 작업 상태가 running이 될 때까지 기다릴 필요가 없습니다.

    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
        set bigquery-changestream-quickstart user123 cf:col1=abc
    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
        set bigquery-changestream-quickstart user546 cf:col1=def
    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
        set bigquery-changestream-quickstart user789 cf:col1=ghi
    

    다음을 바꿉니다.

    • PROJECT_ID: 사용 중인 프로젝트의 ID입니다.
    • BIGTABLE_INSTANCE_ID: bigquery-changestream-quickstart 테이블을 포함하는 인스턴스의 ID

BigQuery에서 변경 로그 보기

  1. Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트와 데이터 세트 bigtable_bigquery_quickstart를 펼칩니다.

  3. bigquery-changestream-quickstart_changelog 테이블을 클릭합니다.

  4. 변경 로그를 보려면 미리보기를 클릭합니다.

    BigQuery에서 로그 변경 미리보기

삭제

이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.

  1. 테이블에서 변경 내역을 사용 중지합니다.

    gcloud bigtable instances tables update bigquery-changestream-quickstart \
    --project=PROJECT_ID --instance=BIGTABLE_INSTANCE_ID \
    --clear-change-stream-retention-period
    
  2. bigquery-changestream-quickstart 테이블을 삭제합니다.

    cbt --instance=BIGTABLE_INSTANCE_ID --project=PROJECT_ID deletetable bigquery-changestream-quickstart
    
  3. 변경 내역 파이프라인을 중지합니다.

    1. Google Cloud 콘솔에서 Dataflow 작업 페이지로 이동합니다.

      작업으로 이동

    2. 작업 목록에서 스트리밍 작업을 선택합니다.

    3. 탐색에서 중지를 클릭합니다.

    4. 작업 중지 대화상자에서 취소를 선택한 다음 작업 중지를 클릭합니다.

  4. BigQuery 데이터 세트를 삭제합니다.

    1. Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.

      BigQuery로 이동

    2. 탐색기 패널에서 데이터 세트 bigtable_bigquery_quickstart를 찾아 클릭합니다.

    3. 삭제를 클릭하고 delete를 입력한 후 한 번 더 삭제를 클릭하여 확인합니다.

  5. 선택사항: 이 빠른 시작에 새 인스턴스를 만든 경우 삭제합니다.

    cbt deleteinstance BIGTABLE_INSTANCE_ID
    

다음 단계