세션 찾기

이 문서에서는 BigQuery에서 세션 ID를 가져오는 방법을 설명합니다. 이 문서는 BigQuery 세션을 이미 이해하고 있으며 세션을 만들어 본 적이 있는 사용자를 대상으로 합니다.

이러한 단계를 완료하기 전에 세션 ID를 가져오는 데 필요한 권한이 있는지 확인합니다.

활성 세션의 ID 가져오기

경우에 따라 세션 내에서 계속 작업하려면 세션을 참조해야 합니다. 예를 들어 Cloud Shell로 작업하는 경우 해당 세션에 대한 명령어를 실행할 때마다 세션 ID를 포함해야 합니다.

Console

Google Cloud 콘솔의 세션 내에서 새 쿼리를 실행하기 위해 세션 ID를 제공할 필요가 없습니다. 세션이 포함된 편집기 탭에서 계속 작업할 수 있습니다. 그러나 Cloud Shell 또는 API 호출에서 세션을 참조하려면 Console에서 만든 세션의 ID를 알아야 합니다.

이 단계를 완료하기 전에 활성 세션에서 하나 이상의 쿼리를 실행했는지 확인하세요.

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

    BigQuery로 이동

  2. 세션이 포함된 편집기 탭을 클릭합니다.

  3. 쿼리 결과에서 작업 정보를 클릭합니다.

  4. 작업 정보 목록에서 세션 ID를 검색합니다.

    Session ID: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ
    

bq

Cloud Shell 내의 세션에서 쿼리 명령어를 실행하려면 명령어에 세션 ID를 포함해야 합니다. 세션을 만들 때 또는 세션 목록을 검색하여 세션 ID를 가져올 수 있습니다.

Cloud Shell로 세션을 만들 때 반환되는 세션 ID는 다음과 같습니다.

In session: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ

API

API 호출로 SQL 명령어를 세션에 전달하려면 API 호출에 세션 ID를 포함해야 합니다. 세션을 만들 때 또는 세션 목록을 검색하여 세션 ID를 가져올 수 있습니다.

API 호출로 세션을 만들 때 응답의 세션 ID는 다음과 같습니다.

sessionId: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ

활성 및 비활성 세션의 목록 가져오기

활성 및 비활성 세션의 세션 ID를 가져오려면 다음 단계를 수행합니다.

콘솔

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

    BigQuery로 이동

  2. 작업 기록의 유형을 선택합니다.

    • 최근 작업의 정보를 표시하려면 개인 기록을 클릭합니다.
    • 프로젝트의 최근 작업 정보를 표시하려면 프로젝트 기록을 클릭합니다.
  3. 왼쪽으로 스크롤하여 세션 ID를 확인합니다.

    작업 기록의 세션 ID

SQL

활성 세션 및 종료된 세션을 포함한 최근 세션 3개의 목록을 가져오려면 편집기 탭에서 다음 쿼리를 실행합니다.

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

    BigQuery로 이동

  2. 쿼리 편집기에서 다음 문을 입력합니다.

    SELECT
      session_id,
      MAX(creation_time) AS last_modified_time
    FROM region-us.INFORMATION_SCHEMA.VIEW
    WHERE
      session_id IS NOT NULL
      AND creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 20 DAY)
    GROUP BY session_id
    ORDER BY last_modified_time DESC;
    

    다음을 바꿉니다.

    • VIEW: INFORMATION_SCHEMA 뷰:
      • JOBS_BY_USER: 현재 프로젝트에서 현재 사용자가 만든 작업만 반환합니다.
      • SESSIONS_BY_USER: 현재 프로젝트에서 현재 사용자가 만든 세션만 반환합니다.
      • SESSIONS_BY_PROJECT: 현재 프로젝트의 모든 세션을 반환합니다.

  3. 실행을 클릭합니다.

쿼리를 실행하는 방법에 대한 자세한 내용은 대화형 쿼리 실행을 참조하세요.

이 쿼리는 다음과 비슷한 결과를 생성합니다.

+-------------------------------------------------------------------------+
| session_id                                        | last_modified_time  |
+-------------------------------------------------------------------------+
| CgwKCmZhbGl1LXRlc3QQARokMGQ5YWWYzZmE0YjhkMDBm     | 2021-06-01 23:04:26 |
| CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZTczwZjA1NDc2 | 2021-05-30 22:43:02 |
| CgwKCmZhbGl1LXRlc3QQY2MzLTg4ZDEtYzVhOWZiYmM5NzZk  | 2021-04-07 22:31:21 |
+-------------------------------------------------------------------------+

활성 세션의 목록 가져오기

지난 24시간 내에 종료되지 않은 활성 세션 목록을 가져오려면 다음 쿼리를 실행합니다.

SELECT
  session_id,
  MAX(creation_time) AS last_modified_time
FROM `region-us`.INFORMATION_SCHEMA.VIEW
WHERE
  session_id IS NOT NULL
  AND creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY)
  AND is_active
GROUP BY session_id;
ORDER BY last_modified_time DESC;

이 쿼리는 다음과 비슷한 결과를 생성합니다.

+-------------------------------------------------------------------------+
| session_id                                        | last_modified_time  |
+-------------------------------------------------------------------------+
| CgwKCmZhbGl1LXRlc3QQARokMGQ5YWWYzZmE0YjhkMDBm     | 2021-06-01 23:04:26 |
| CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZTczwZjA1NDc2 | 2021-05-30 22:43:02 |
+-------------------------------------------------------------------------+

다음을 바꿉니다.

  • VIEW: INFORMATION_SCHEMA 뷰:
    • JOBS_BY_USER: 현재 프로젝트에서 현재 사용자가 만든 작업만 반환합니다.
    • SESSIONS_BY_USER: 현재 프로젝트에서 현재 사용자가 만든 세션만 반환합니다.
    • SESSIONS_BY_PROJECT: 현재 프로젝트의 모든 세션을 반환합니다.

다음 단계