저장된 쿼리 만들기

이 문서에서는 저장된 쿼리 및 기존 저장된 쿼리를 만드는 방법을 설명합니다.

저장된 쿼리

다음 섹션에서 저장된 쿼리를 만드는 방법을 알아보세요. 저장된 쿼리는 Dataform으로 구동되는 BigQuery Studio 코드 애셋입니다.

저장된 쿼리 삭제 및 저장된 쿼리 기록 관리에 대한 자세한 내용은 저장된 쿼리를 참조하세요.

BigQuery Studio 사용 설정

애셋 관리에 BigQuery Studio 사용 설정의 안내에 따라 저장된 쿼리와 같은 코드 애셋을 저장 및 공유하고, 버전을 관리합니다.

필수 권한

저장된 쿼리를 만들고, 수정하고, 확인하기에 적절한 권한을 설정합니다.

Dataform 관리자(roles/dataform.admin) 역할이 있는 모든 사용자는 프로젝트에서 생성된 모든 저장된 쿼리에 대한 소유자 액세스 권한을 가집니다.

BigQuery ID 및 액세스 관리(IAM)에 대한 자세한 내용은 IAM으로 액세스 제어를 참조하세요.

저장된 쿼리를 만들 수 있는 권한

저장된 쿼리를 만들고 실행하려면 다음 IAM 권한이 필요합니다.

  • dataform.locations.get
  • dataform.locations.list
  • dataform.repositories.list
  • dataform.repositories.create

이러한 권한은 다음 IAM 역할로부터 얻을 수 있습니다.

저장된 쿼리를 수정할 수 있는 권한

저장된 쿼리를 수정하고 실행하려면 다음 IAM 역할이 필요합니다.

저장된 쿼리를 볼 수 있는 권한

저장된 쿼리를 보고 실행하려면 다음 IAM 역할이 필요합니다.

코드 애셋의 기본 리전 설정

코드 애셋을 처음 만드는 경우 코드 애셋의 기본 리전을 설정합니다. 생성된 후에는 코드 애셋의 리전을 변경할 수 없습니다.

저장된 쿼리 만들기

저장된 쿼리를 만들려면 다음 단계를 수행합니다.

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

    BigQuery로 이동

  2. 새 쿼리 작성을 클릭합니다.

  3. 쿼리 편집기에서 유효한 SQL 쿼리를 입력합니다. 예를 들어 공개 데이터 세트를 쿼리할 수 있습니다.

    SELECT
      name,
      SUM(number) AS total
    FROM
      `bigquery-public-data.usa_names.usa_1910_2013`
    GROUP BY
      name
    ORDER BY
      total DESC
    LIMIT
      10;
    
  4. 쿼리 저장 > 쿼리 저장을 클릭합니다.

  5. 쿼리 저장 대화상자에 저장된 쿼리의 이름을 입력합니다.

  6. 선택사항: 나중에 이 저장된 쿼리 및 다른 모든 코드 애셋에 사용되는 리전을 변경하려면 리전에서 새 리전을 선택합니다.

  7. 저장을 클릭합니다.

저장된 쿼리에 대한 액세스 권한 부여

다른 사용자에게 저장된 쿼리에 대한 액세스 권한을 부여하려면 해당 사용자를 적절한 IAM 역할에 추가하세요.

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

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트와 쿼리 폴더를 펼치고 필요한 경우 공유 쿼리 폴더를 펼칩니다. 액세스 권한을 부여할 저장된 쿼리를 찾습니다.

  3. 저장된 쿼리 옆에 있는 작업 보기를 클릭한 후 공유 > 권한 관리를 클릭합니다.

  4. 권한 관리 창에서 사용자/그룹 추가를 클릭합니다.

  5. 새 주 구성원 필드에 주 구성원을 입력합니다.

  6. 역할 목록에서 다음 역할 중 하나를 선택합니다.

    • 코드 소유자: 삭제 또는 공유를 포함하여 저장된 쿼리에 대한 모든 작업을 수행할 수 있습니다.
    • 코드 편집자: 쿼리를 수정할 수 있습니다.
    • 코드 뷰어: 쿼리를 볼 수 있습니다.
  7. 선택사항: 역할 및 고급 공유 설정의 전체 목록을 보려면 고급 공유를 클릭합니다.

  8. 저장을 클릭합니다.

  9. 저장된 쿼리 정보로 돌아가려면 닫기를 클릭합니다.

저장된 쿼리 공유

저장된 쿼리에 대한 링크를 생성하고 공유하여 저장된 쿼리를 다른 사용자와 공유합니다. 저장된 쿼리를 사용자가 볼 수 있으려면 먼저 해당 사용자에게 저장된 쿼리에 대한 액세스 권한을 부여해야 합니다.

공유 쿼리를 실행하려면 사용자에게 쿼리에서 액세스하는 데이터에 대한 액세스 권한이 있어야 합니다. 자세한 내용은 데이터 세트에 대한 액세스 권한 부여를 참조하세요.

저장된 쿼리를 공유하려면 쿼리에 용도를 설명하는 주석을 포함하는 것이 좋습니다.

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

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트와 쿼리 폴더를 펼치고 필요한 경우 공유 쿼리 폴더를 펼칩니다. 공유하려는 저장된 쿼리를 찾습니다.

  3. 쿼리 옆에 있는 작업 보기를 클릭한 후 공유 > 링크 복사를 클릭합니다.

  4. 다른 사용자와 링크를 공유합니다.

저장된 쿼리 버전을 새 쿼리로 열기

기존 저장된 쿼리 버전을 새 쿼리로 열려면 다음 단계를 수행합니다.

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

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트와 쿼리 폴더를 펼치고 필요한 경우 공유 쿼리 폴더를 펼칩니다. 저장된 쿼리를 선택합니다.

  3. 활동 창을 선택합니다.

  4. 저장된 쿼리 버전 옆에 있는 작업 보기를 클릭한 후 새 쿼리로 열기를 클릭합니다.

저장된 쿼리 업데이트

저장된 쿼리를 업데이트하는 경우 변경사항을 새 쿼리 버전에 저장할 수 있습니다.

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

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트와 쿼리 폴더를 펼치고 필요한 경우 공유 쿼리 폴더를 펼칩니다. 저장된 쿼리의 이름을 클릭하여 엽니다.

  3. 쿼리를 수정합니다.

  4. 수정된 쿼리를 저장하려면 쿼리 저장 > 쿼리 저장을 클릭합니다.

    새로운 쿼리 버전이 생성되고 활동 창에서 볼 수 있습니다.

저장된 쿼리 업로드

로컬 SQL 쿼리를 업로드하여 BigQuery Studio에서 저장된 쿼리로 사용할 수 있습니다. 그러면 업로드된 저장된 쿼리가 Google Cloud 콘솔의 BigQuery 페이지에도 표시됩니다.

저장된 쿼리를 업로드하려면 다음 단계를 수행합니다.

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

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트를 펼친 후 다음 중 하나를 수행합니다.

    • 쿼리 옆에 있는 작업 보기 > SQL 쿼리 업로드를 클릭합니다.
    • Google Cloud 프로젝트 이름 옆에 있는 작업 보기 > 프로젝트에 업로드 > SQL 쿼리를 클릭합니다.
  3. SQL 업로드 대화상자의 SQL 필드에서 찾아보기를 클릭한 후 업로드하려는 쿼리를 선택합니다.

  4. 선택사항: SQL 이름 필드에서 쿼리 이름을 수정합니다.

  5. 리전 필드에서 저장된 쿼리를 업로드할 리전을 선택합니다.

  6. 업로드를 클릭합니다.

저장된 쿼리가 탐색기 창에 표시됩니다.

기존 저장된 쿼리

다음 섹션에서는 기존 저장된 쿼리를 만들고 업데이트하는 방법을 알아봅니다. 기존 저장된 쿼리의 공유, 마이그레이션, 삭제에 대한 자세한 내용은 기존 저장된 쿼리를 참조하세요.

기존 저장된 쿼리에 필요한 권한

기존 저장된 쿼리에서 만들기, 보기, 업데이트, 삭제를 수행하려면 다음 IAM 권한이 필요합니다.

  • 비공개 기존 저장된 쿼리:
    • 기존 비공개 저장된 쿼리를 만드는 경우에는 특별한 권한이 필요 없습니다. 모든 프로젝트에 비공개 쿼리를 저장할 수 있지만 만든 사용자만 쿼리를 보거나 업데이트하거나 삭제할 수 있습니다.
  • 프로젝트 수준 기존 저장된 쿼리:
    • 프로젝트 수준의 기존 저장된 쿼리를 만들려면 bigquery.savedqueries.create 권한이 필요합니다. bigquery.admin 사전 정의된 역할에는 bigquery.savedqueries.create 권한이 포함됩니다.
    • 프로젝트 수준의 기존 저장된 쿼리를 보려면 bigquery.savedqueries.getbigquery.savedqueries.list 권한이 필요합니다. bigquery.adminbigquery.user 사전 정의된 역할에는 bigquery.savedqueries.getbigquery.savedqueries.list 권한이 포함됩니다.
    • 프로젝트 수준의 기존 저장된 쿼리를 업데이트하려면 bigquery.savedqueries.update 권한이 필요합니다. bigquery.admin 사전 정의된 역할에는 bigquery.savedqueries.update 권한이 포함됩니다.
    • 프로젝트 수준의 기존 저장된 쿼리를 삭제하려면 bigquery.savedqueries.delete 권한이 필요합니다. bigquery.admin 사전 정의된 역할에는 bigquery.savedqueries.delete 권한이 포함됩니다.
  • 공개 기존 저장된 쿼리:
    • 기존 공개 저장된 쿼리를 만드는 경우에는 특별한 권한이 필요 없습니다. 모든 프로젝트에 기존 공개 저장된 쿼리를 저장할 수 있지만 만든 사용자만 쿼리를 업데이트하거나 삭제할 수 있습니다. 링크가 있는 모든 사용자가 기존 공개 저장된 쿼리를 볼 수 있습니다.

BigQuery의 IAM 역할에 대한 자세한 내용은 사전 정의된 역할 및 권한을 참조하세요.

기존 저장된 쿼리 만들기

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

    BigQuery로 이동

  2. 새 쿼리 작성을 클릭합니다.

  3. 쿼리 편집기에서 유효한 SQL 쿼리를 입력합니다. 예를 들어 공개 데이터 세트를 쿼리할 수 있습니다.

    SELECT
      name,
      SUM(number) AS total
    FROM
      `bigquery-public-data.usa_names.usa_1910_2013`
    GROUP BY
      name
    ORDER BY
      total DESC
    LIMIT
      10;
    
  4. 쿼리 저장(기존) > 쿼리 저장(기존)을 클릭합니다.

  5. 쿼리 저장 대화상자에 쿼리 이름을 입력한 다음 공개 상태를 다음 옵션 중 하나로 설정합니다.

    • 기존 비공개 공유 쿼리의 경우 개인(본인만 수정 가능)입니다.
    • 프로젝트 수준의 기존 저장된 쿼리에 대한 프로젝트(적절한 권한이 있는 주 구성원이 수정 가능).
    • 기존 공개 저장된 쿼리의 경우 공개입니다.
  6. 저장을 클릭합니다.

기존 저장된 쿼리 공유

프로젝트 또는 공개 상태인 기존 저장된 쿼리를 공유할 수 있습니다. 프로젝트 공개 상태를 사용하면 필요한 권한을 가진 주 구성원이 쿼리를 보거나, 업데이트하거나, 삭제할 수 있습니다. 공개 상태가 공개인 경우 쿼리 링크가 있는 모든 사용자가 쿼리를 볼 수 있지만 업데이트하거나 삭제하지는 못합니다.

기존 저장된 쿼리에 대한 링크를 생성하고 공유하여 기존 저장된 쿼리를 다른 사용자와 공유합니다.

기존 공유 쿼리를 실행하려면 사용자에게 쿼리에서 액세스하는 데이터에 대한 액세스 권한이 있어야 합니다. 자세한 내용은 데이터 세트에 대한 액세스 권한 부여를 참조하세요.

기존 저장된 쿼리를 공유하려면 쿼리에 용도를 설명하는 주석을 포함하는 것이 좋습니다.

  1. 탐색기 창에서 프로젝트와 (기존) 쿼리 폴더를 펼친 후 공유할 기존 저장된 쿼리를 찾습니다.
  2. 쿼리 옆에 있는 작업 보기를 클릭한 후 링크 가져오기를 클릭합니다.
  3. 쿼리 액세스 권한을 부여하려는 사용자와 링크를 공유합니다.

기존 저장된 쿼리 업데이트

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

    BigQuery로 이동

  2. 탐색기 창에서 프로젝트와 (기존) 쿼리 폴더를 펼치고 필요한 경우 프로젝트 쿼리 폴더를 펼칩니다.

  3. 기존 저장된 쿼리의 이름을 클릭하여 엽니다.

  4. 쿼리를 수정합니다.

  5. 수정된 쿼리를 저장하려면 쿼리 저장(기존) > 쿼리 저장(기존)을 클릭합니다.

다음 단계