연속 쿼리 소개

이 문서에서는 BigQuery 연속 쿼리를 설명합니다.

BigQuery 연속 쿼리는 지속적으로 실행되는 SQL 문입니다. 연속 쿼리를 사용하면 BigQuery에서 수신 데이터를 실시간으로 분석할 수 있습니다. 연속 쿼리에서 생성된 출력 행을 BigQuery 테이블에 삽입하거나 Pub/Sub, Bigtable 또는 Spanner로 내보낼 수 있습니다. 연속 쿼리는 다음 방법 중 하나를 사용하여 표준 BigQuery 테이블에 기록된 데이터를 처리할 수 있습니다.

연속 쿼리를 사용하여 통계를 만들어 즉시 조치, 실시간 머신러닝(ML) 추론 적용, 다른 플랫폼에 데이터 복제 등 시간에 민감한 작업을 수행할 수 있습니다. 이를 통해 애플리케이션 결정 로직을 위한 이벤트 기반 데이터 처리 엔진으로 BigQuery를 사용할 수 있습니다.

다음 다이어그램은 일반적인 연속 쿼리 워크플로를 보여줍니다.

데이터 수집, 처리, Bigtable 및 Pub/Sub과 같은 대상으로의 내보내기를 포함한 일반적인 BigQuery 연속 쿼리 워크플로를 보여주는 다이어그램

사용 사례

연속 쿼리를 사용하는 것이 좋은 일반적인 사용 사례는 다음과 같습니다.

  • 맞춤형 고객 상호작용 서비스: 생성형 AI를 사용하여 각 고객 상호작용에 맞게 맞춤설정된 메시지를 만듭니다.
  • 이상 감지: 복잡한 데이터에 대해 실시간으로 이상 및 위협 감지를 수행할 수 있는 솔루션을 빌드하여 문제에 보다 신속하게 대응할 수 있습니다.
  • 맞춤설정 가능한 이벤트 기반 파이프라인: Pub/Sub와의 연속 쿼리 통합을 사용해서 수신 데이터를 기반으로 다운스트림 애플리케이션을 트리거합니다.
  • 데이터 보강 및 엔티티 추출: 지속적 쿼리를 사용하여 SQL 함수와 ML 모델을 통해 실시간 데이터 보강 및 변환을 실행합니다.
  • 역방향 추출, 변환, 로드(ETL): 지연 시간이 짧은 애플리케이션 제공에 더 적합한 다른 스토리지 시스템으로 실시간 역방향 ETL을 수행합니다. 예를 들어 BigQuery에 쓰여진 이벤트 데이터를 분석하거나 개선한 후 애플리케이션 서빙을 위해 Bigtable 또는 Spanner로 스트리밍합니다.

지원되는 작업

연속 쿼리에서는 다음 작업이 지원됩니다.

  • INSERT을 실행하여 연속 쿼리의 데이터를 BigQuery 테이블에 씁니다.
  • EXPORT DATA을 실행하여 Pub/Sub 주제에 연속 쿼리 출력을 게시합니다. 자세한 내용은 Pub/Sub로 데이터 내보내기를 참조하세요.

    Pub/Sub 주제에서 Dataflow를 사용하여 스트리밍 분석을 실행하거나 애플리케이션 통합 워크플로에서 데이터를 사용하는 등 다른 서비스와 함께 데이터를 사용할 수 있습니다.

  • EXPORT DATA 문을 실행하여 BigQuery에서 Bigtable 테이블로 데이터를 내보냅니다. 자세한 내용은 Bigtable에 데이터 내보내기를 참조하세요.

  • EXPORT DATA 문을 실행하여 BigQuery에서 Spanner 테이블로 데이터를 내보냅니다. 자세한 내용은 Spanner로 데이터 내보내기(역방향 ETL)를 참고하세요.

  • 다음 생성형 AI 함수를 호출합니다.

    이 함수를 사용하려면 Vertex AI 모델을 기반으로 한 BigQuery ML 원격 모델이 있어야 합니다.

  • 다음 AI 함수 호출:

    이러한 함수를 사용하려면 Cloud AI API를 기반으로 한 BigQuery ML 원격 모델이 있어야 합니다.

  • ML.NORMALIZER 함수를 사용하여 수치 데이터를 정규화합니다.

  • 스테이트리스(Stateless) GoogleSQL 함수(예: 변환 함수)를 사용합니다. 스테이트리스(Stateless) 함수에서 각 행은 테이블의 다른 행과는 별개로 처리됩니다.

  • APPENDS 변경 내역 함수를 사용하여 특정 시점에서 연속 쿼리 처리를 시작합니다.

승인

연속 쿼리 작업을 실행할 때 사용되는 Google Cloud 액세스 토큰은 사용자 계정으로 생성된 경우 2일의 TTL (수명)을 갖습니다. 따라서 이러한 작업은 2일 후에 실행이 중지됩니다. 서비스 계정에서 생성된 액세스 토큰은 더 오래 실행될 수 있지만 최대 쿼리 런타임을 준수해야 합니다. 자세한 내용은 서비스 계정을 사용하여 연속 쿼리 실행을 참조하세요.

위치

다음 위치에서는 연속 쿼리가 지원되지 않습니다.

리전 설명 리전 이름 세부정보
미주
미국 멀티 리전 us
Dallas us-south1 잎 아이콘 낮은 CO2
아이오와 us-central1 잎 아이콘 낮은 CO2
로스앤젤레스 us-west2
멕시코 northamerica-south1
몬트리올 northamerica-northeast1 잎 아이콘 낮은 CO2
북버지니아 us-east4
오리건 us-west1 잎 아이콘 낮은 CO2
솔트레이크시티 us-west3
산티아고 southamerica-west1 잎 아이콘 낮은 CO2
상파울루 southamerica-east1 잎 아이콘 낮은 CO2
사우스캐롤라이나 us-east1
토론토 northamerica-northeast2 잎 아이콘 낮은 CO2
아시아 태평양
델리 asia-south2
홍콩 asia-east2
자카르타 asia-southeast2
멜버른 australia-southeast2
뭄바이 asia-south1
오사카 asia-northeast2
서울 asia-northeast3
싱가포르 asia-southeast1
시드니 australia-southeast1
타이완 asia-east1
도쿄 asia-northeast1
유럽
EU 멀티 리전 eu
벨기에 europe-west1 잎 아이콘 낮은 CO2
베를린 europe-west10
핀란드 europe-north1 잎 아이콘 낮은 CO2
프랑크푸르트 europe-west3
런던 europe-west2 잎 아이콘 낮은 CO2
마드리드 europe-southwest1 잎 아이콘 낮은 CO2
밀라노 europe-west8
네덜란드 europe-west4 잎 아이콘 낮은 CO2
파리 europe-west9 잎 아이콘 낮은 CO2
스톡홀름 europe-north2 잎 아이콘 낮은 CO2
토리노 europe-west12
바르샤바 europe-central2
취리히 europe-west6 잎 아이콘 낮은 CO2
중동
도하 me-central1
Dammam me-central2
텔아비브 me-west1
아프리카
요하네스버그 africa-south1

제한사항

연속 쿼리에는 다음과 같은 제한사항이 적용됩니다.

예약 제한사항

  • 연속 쿼리를 실행하려면 Enterprise 버전 또는 Enterprise Plus 버전 예약을 만들어야 합니다. 연속 쿼리는 주문형 컴퓨팅 청구 모델을 지원하지 않습니다.
  • CONTINUOUS 예약 할당을 만들면 연결된 예약이 최대 500슬롯으로 제한됩니다. bq-continuous-queries-feedback@google.com으로 문의하여 이 한도 상향을 요청할 수 있습니다.
  • 연속 쿼리 예약 할당과 동일한 예약에서 다른 작업 유형을 사용하는 예약 할당을 만들 수 없습니다.
  • 연속 쿼리 동시 실행은 구성할 수 없습니다. BigQuery는 CONTINUOUS 작업 유형을 사용하는 사용 가능한 예약 할당을 기반으로 동시에 실행할 수 있는 연속 쿼리 수를 자동으로 결정합니다.
  • 동일한 예약을 사용하여 여러 개의 연속 쿼리를 실행하는 경우 BigQuery 공정성에 정의된 대로 개별 작업이 사용 가능한 리소스를 공정하게 분할하지 않을 수 있습니다.

슬롯 자동 확장

연속 쿼리는 슬롯 자동 확장을 사용하여 할당된 용량을 워크로드에 맞게 동적으로 확장할 수 있습니다. 연속 쿼리 워크로드가 증가하거나 감소함에 따라 BigQuery는 슬롯을 동적으로 조정합니다.

연속 쿼리가 실행되기 시작하면 슬롯 리소스를 소비하는 수신 데이터를 적극적으로 수신 대기합니다. 실행 중인 연속 쿼리가 있는 예약은 슬롯이 0으로 축소되지 않지만, 주로 수신 데이터를 수신 대기하는 유휴 연속 쿼리는 최소한의 슬롯(일반적으로 1개 슬롯)을 소비할 것으로 예상됩니다.

유휴 슬롯 공유

연속 쿼리는 유휴 슬롯 공유를 사용하여 미사용 슬롯 리소스를 다른 예약 및 작업 유형과 공유할 수 있습니다.

  • 연속 쿼리를 실행하려면 CONTINUOUS 예약 할당이 여전히 필요하며 다른 예약의 유휴 슬롯에만 의존할 수는 없습니다. 따라서 CONTINUOUS 예약 할당에는 0이 아닌 슬롯 기준 또는 0이 아닌 슬롯 자동 확장 구성이 필요합니다.
  • CONTINUOUS 예약 할당의 유휴 기준 슬롯 또는 약정 슬롯만 공유할 수 있습니다. 자동 확장된 슬롯은 다른 예약의 유휴 슬롯으로 공유할 수 없습니다.

가격 책정

연속 쿼리에서는 슬롯으로 측정되는 BigQuery 용량 컴퓨팅 가격 책정을 사용합니다. 연속 쿼리를 실행하려면 Enterprise 또는 Enterprise Plus 버전을 사용하는 예약 CONTINUOUS 작업 유형을 사용하는 예약 할당이 있어야 합니다.

데이터 수집 및 스토리지 등의 기타 BigQuery 리소스 사용 요금은 BigQuery 가격 책정에 표시된 요율에 따라 청구됩니다.

연속 쿼리 결과를 받거나 연속 쿼리 처리 중에 호출되는 다른 서비스를 사용하면 해당 서비스에 대해 게시된 요금이 청구됩니다. 연속 쿼리에 사용되는 기타 Google Cloud 서비스의 가격 책정은 다음 주제를 참조하세요.

다음 단계

연속 쿼리 만들어 보기