스트림 객체의 백필 관리

개요

Datastream의 스트림은 계속되는 변경사항을 대상으로 스트리밍하는 것뿐만 아니라 이전 데이터를 백필할 수 있습니다. 스트림을 만들 때 스트림의 소스 데이터베이스에 대한 정보가 구성되었습니다.

이전 데이터 백필 체크박스를 선택한 경우 Datastream이 데이터 변경사항 외에도 모든 기존 데이터를 소스에서 대상으로 스트리밍합니다.

이 체크박스를 선택하지 않았으면 Datastream이 데이터의 변경사항만 스트리밍합니다. Datastream이 모든 기존 데이터의 스냅샷을 소스에서 대상으로 스트리밍하도록 하려면 이 데이터가 포함된 객체에 대해 백필을 시작해야 합니다. 객체는 데이터베이스 스키마, 테이블, 열 형식입니다.

소스와 대상 사이에 데이터가 동기화되지 않은 경우에도 객체 백필을 시작해야 합니다. 예를 들어 사용자가 대상에서 데이터를 의도치 않게 삭제하여 데이터가 손실될 수 있습니다. 이 경우 객체 백필을 시작하면 모든 데이터가 한 번에 대상으로 스트리밍되기 때문에 객체 백필이 '재설정 메커니즘'과 같이 사용됩니다. 그 결과 소스와 대상 사이에 데이터가 동기화됩니다.

객체에 대해 백필을 시작한 후에는 백필을 중지할 수 있습니다. 위 예시에서는 사용자가 데이터베이스 스키마를 수정하고 스키마 또는 데이터가 손상됩니다. 이러한 스키마 또는 데이터가 대상으로 스트리밍되지 않아야 하므로 객체에 대해 백필을 중지합니다.

또한 부하 분산 목적으로 객체 백필을 중지할 수도 있습니다. Datastream은 여러 백필을 병렬로 실행할 수 있습니다. 그러면 소스에 추가 부하가 발생할 수 있습니다. 이러한 부하가 상당히 크면 객체 백필을 중지하고 하나씩 백필을 시작합니다.

객체 상태

객체에 대한 백필 시작 및 중지 수명 주기에는 다음과 같은 여러 상태가 포함됩니다.

  • 상태 없음(UI에서 -로 표시됨): 객체에 이 상태가 수신되는 이유는 다음과 같습니다.
    • 스트림이 시작되지 않았습니다.
    • 이전 데이터 백필 체크박스가 선택되지 않았습니다(따라서 백필이 수동으로 정의됨).
    • 객체가 자동 백필에서 명시적으로 제외되었습니다.
    • 스트림은 향후 테이블을 포함하도록 구성됩니다. 이 경우 새 테이블이 소스에 추가되면 일반적으로 새 테이블에 백필할 '이전' 데이터가 포함되지 않기 때문에 이에 대해 자동 백필 태스크가 생성되지 않습니다.

      자세한 내용은 스트림의 소스 데이터베이스에 대한 정보 구성을 참조하세요.

  • Pending: 객체에 대해 백필이 아직 시작되지 않았습니다.
  • Active: 객체에 대해 백필이 진행 중입니다.
  • Completed: 객체에 대해 백필이 완료되었습니다.
  • Stopped: 객체에 대해 백필이 중지되었습니다. 객체에 대해 백필이 다시 시작되었으면 Datastream이 객체와 관련된 모든 기존 데이터를 소스에서 대상으로 스트리밍합니다.
  • Failed: 객체에 대해 백필이 실패했고 백필을 다시 시작해야 합니다.

백필 시작

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

    스트림 페이지로 이동

  2. 백필을 시작할 객체가 포함된 스트림을 클릭합니다.

  3. 객체 탭을 클릭합니다.

  4. 백필을 시작할 각 객체에 대해 체크박스를 선택합니다.

  5. 백필 시작을 클릭합니다.

  6. 객체를 하나만 선택했으면 대화상자에서 객체 백필 시작을 클릭합니다. 그렇지 않고 여러 객체를 선택했으면 여러 객체 백필 선택을 클릭합니다.

    Datastream이 선택한 객체에 대해 백필을 시작하고 각 객체의 상태가 Pending에서 ActiveCompleted로 변경됩니다. 객체 상태가 Completed이면 Datastream이 객체의 모든 데이터를 읽었지만 데이터가 아직 대상에 로드되고 있을 수 있다는 의미입니다.

백필 중지

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

    스트림 페이지로 이동

  2. 백필을 중지할 객체가 포함된 스트림을 클릭합니다.

  3. 객체 탭을 클릭합니다.

  4. 백필을 중지할 각 객체에 대해 체크박스를 선택합니다.

  5. 백필 중지를 클릭합니다.

  6. 객체를 하나만 선택했으면 대화상자에서 객체 백필 중지를 클릭합니다. 그렇지 않고 여러 객체를 선택했으면 여러 객체 백필 중지를 클릭합니다.

    Datastream이 선택한 객체에 대해 백필을 중지하고 각 객체의 상태가 Stopped로 변경됩니다.

    객체가 이 상태이면 객체에 대해 백필이 중지됩니다. 객체에 대해 백필이 다시 시작되었으면 Datastream이 객체와 관련된 모든 기존 데이터를 소스에서 대상으로 스트리밍합니다.

다음 단계