변경 내역 사용 설정 테이블 만들기 및 변경사항 캡처

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

시작하기 전에

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

    Go to project selector

  2. Make sure that billing is enabled for your Google Cloud project.

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

    Enable the APIs

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

    Activate Cloud Shell

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

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

    인스턴스로 이동

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

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

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

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

  5. 테이블 이름을 change-streams-quickstart로 지정합니다.

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

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

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

변경 내역을 캡처하도록 데이터 파이프라인 초기화

  1. Cloud Shell에서 다음 명령어를 실행하여 코드를 다운로드하고 실행합니다.

    git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
    cd java-docs-samples/bigtable/beam/change-streams
    mvn compile exec:java -Dexec.mainClass=ChangeStreamsHelloWorld \
    "-Dexec.args=--project=PROJECT_ID --bigtableProjectId=PROJECT_ID \
    --bigtableInstanceId=BIGTABLE_INSTANCE_ID --bigtableTableId=change-streams-quickstart \
    --runner=dataflow --region=BIGTABLE_REGION --experiments=use_runner_v2"
    

    다음을 바꿉니다.

    • PROJECT_ID: 사용 중인 프로젝트의 ID입니다.
    • BIGTABLE_INSTANCE_ID: 새 테이블을 포함할 인스턴스의 ID입니다.
    • BIGTABLE_REGION: Bigtable 인스턴스가 있는 리전(예: us-east5)입니다.
  2. Google Cloud 콘솔에서 Dataflow 페이지로 이동합니다.

    Dataflow로 이동

  3. 이름이 changestreamquickstart로 시작하는 작업을 클릭합니다.

  4. 화면 하단에서 표시를 클릭하여 로그 패널을 엽니다.

  5. 작업자 로그를 클릭하여 변경 내역의 출력을 모니터링합니다.

  6. Cloud Shell에서 Bigtable에 일부 데이터를 기록하여 변경 내역 프로세스를 확인합니다.

    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
    import change-streams-quickstart quickstart-data.csv column-family=cf
    
  7. Google Cloud 콘솔에서 심각도Info 이상으로 설정되어 있는지 확인합니다.

  8. 작업자 로그 출력 로그에는 다음이 포함됩니다.

    Change captured: user123#2023,USER,SetCell,cf,col1,abc
    Change captured: user546#2023,USER,SetCell,cf,col1,def
    Change captured: user789#2023,USER,SetCell,cf,col1,ghi
    

삭제

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

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

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

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

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

      작업으로 이동

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

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

    4. 작업 중지 대화상자에서 파이프라인을 취소한 후 작업 중지를 클릭합니다.

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

    cbt deleteinstance BIGTABLE_INSTANCE_ID
    

다음 단계