이 튜토리얼에서는 쿼리를 BigQuery에 제출하는 HTTP Cloud Run 함수를 작성하는 방법을 보여줍니다.
애플리케이션 준비
샘플 애플리케이션 저장소를 로컬 머신에 클론합니다.
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
또는 zip 파일로 샘플을 다운로드하고 압축을 풉니다.
샘플 코드가 있는 디렉토리로 변경합니다.
cd nodejs-docs-samples/functions/v2/helloBigQuery
다음 샘플 코드를 살펴봅니다. 이 샘플은 지정된 데이터 세트에서 최소 400회 이상 발생하는 단어에 대한 쿼리를 제출하고 결과를 반환합니다.
함수 배포하기
HTTP 트리거를 사용하여 함수를 배포하려면 다음 안내를 따르세요.
샘플 코드가 포함된 디렉터리에서 다음 명령어를 실행합니다.
gcloud run deploy FUNCTION \ --source . \ --function FUNCTION_ENTRYPOINT \ --base-image BASE_IMAGE \ --region REGION \ --allow-unauthenticated
다음과 같이 바꿉니다.
FUNCTION을 배포하려는 함수의 이름(예:
my-bigquery-function
)으로 바꿉니다. 이 매개변수를 완전히 생략할 수 있지만 생략하면 이름을 입력하라는 메시지가 표시됩니다.FUNCTION_ENTRYPOINT를 소스 코드에 있는 함수의 진입점으로 바꿉니다. 이는 함수가 실행될 때 Cloud Run이 실행하는 코드입니다. 이 플래그의 값은 소스 코드에 있는 함수 이름 또는 정규화된 클래스 이름이어야 합니다. 샘플 함수에 지정해야 하는 진입점은
helloBigQuery
입니다.BASE_IMAGE를 함수의 기본 이미지 환경으로 바꿉니다(예:
nodejs22
). 기본 이미지 및 각 이미지에 포함된 패키지에 대한 자세한 내용은 런타임 기본 이미지를 참조하세요.REGION을 함수를 배포하려는 Google Cloud 리전으로 바꿉니다. 예를 들면
europe-west1
입니다.
선택사항:
- 웹훅과 같이 공개 HTTP 함수를 만드는 경우
--allow-unauthenticated
플래그를 지정합니다. 이 플래그는 Cloud Run IAM 호출자 역할을 특수 식별자allUser
에 할당합니다. 서비스를 만든 후 나중에 IAM을 사용하여 이 설정을 수정할 수 있습니다.
함수 테스트
함수 배포가 완료되면
uri
속성을 복사합니다.브라우저에서 이 URI에 방문합니다.
쿼리 기준과 일치하는 단어 목록과 각 단어가 대상 데이터 세트에 표시되는 횟수를 볼 수 있습니다.