다음을 통해 공유


Databricks SQL 경고

중요합니다

이 기능은 베타 버전으로 제공됩니다.

이 페이지에서는 Databricks SQL 경고를 사용하도록 설정하고 사용하여 쿼리 실행을 자동화하고, 사용자 지정 조건을 평가하고, 해당 조건이 충족될 때 알림을 전달하기 위한 단계별 지침을 제공합니다. 경고를 사용하면 보고된 값이 예상 임계값을 초과할 때마다 비즈니스 데이터를 사전에 모니터링하고 적시에 알림을 받을 수 있습니다. 경고를 예약하면 관련 쿼리가 실행되고 기본 쿼리의 기존 일정에 관계없이 경고 조건이 확인됩니다. 또한 경고 기록에 액세스하여 과거 경고 평가 결과를 검토할 수 있습니다.

대신 레거시 경고를 사용하는 방법을 알아보려면 레거시 경고란?을 참조하세요.

작업 영역에서 경고 사용

대부분의 고객의 경우 작업 영역 관리자는 미리 보기 페이지에서 이 미리 보기에 대한 작업 영역 액세스를 제어할 수 있습니다. 작업 영역에 이 버전의 경고가 표시되지 않으면 Databricks 계정 팀에 문의하세요.

이 미리 보기를 사용하도록 설정해도 기존 경고에는 영향을 주지 않습니다. 이러한 경고와 레거시 경고를 동시에 계속 사용할 수 있습니다.

경고 보기 및 구성

사이드바에서 경고 아이콘경고를 클릭하여 경고 목록 페이지를 엽니다.

경고 목록 페이지입니다.

  • 경고 탭은 기본적으로 열려 있으며 작업 영역의 모든 경고를 표시합니다. 이름을 필터링하도록 입력할 수 있습니다. 내 경고만 클릭하여 소유자인 경고만 표시합니다.

  • 레거시 경고 탭에는 이전 경고 시스템을 사용하여 만든 경고가 표시됩니다.

  • 이름은 각 경고의 문자열 이름을 표시합니다.

  • 상태는 경고 상태가 TRIGGEREDOK인지 여부를 표시합니다UNKNOWN.

  • 일정 은 마지막으로 업데이트된 시간 또는 날짜를 표시합니다.

  • 소유자는 경고를 소유한 사용자의 사용자 이름을 표시합니다.

  • 만든 시간은 경고가 생성된 날짜와 시간을 표시합니다.

    • TRIGGERED 는 가장 최근 실행 시 대상 쿼리의 열이 구성한 조건임계값 을 충족했음을 의미합니다. "고양이"가 1500마리를 초과하는지 확인하는 경고인 경우 "고양이"가 1500마리를 초과하는 한 경고가 트리거됩니다.
    • OK 는 가장 최근의 쿼리 실행에서 열이 구성한 조건임계값 을 충족하지 못했음을 의미합니다. 그렇다고 해서 경고 가 이전에 트리거되지 않았다는 의미는 아닙니다. "고양이" 값이 현재 1470인 경우 경고가 OK로 표시됩니다.
    • UNKNOWN 는 Databricks SQL에 경고 조건을 평가하기에 충분한 데이터가 없음을 나타냅니다. 이 상태는 경고를 만든 직후에 나타나며 쿼리가 실행될 때까지 유지됩니다. 이 상태는 쿼리 결과에 데이터가 없거나 가장 최근의 쿼리 결과에 구성한 값 열 이 포함되지 않은 경우에도 사용됩니다.
    • ERROR 는 경고 평가 중에 오류가 발생했음을 나타냅니다.

경고 만들기

이 섹션의 단계에서는 다음 이미지에 표시된 경고를 만드는 방법을 안내합니다. 레이블 및 설명을 사용하여 각 구성 요소를 이해합니다.

경고 만들기 UI는 서로 다른 부분을 식별하는 번호가 매겨진 레이블과 함께 표시됩니다.

  1. 데이터 세트: 경고할 쿼리를 작성하고 테스트합니다.
  2. 조건: 경고 알림을 트리거해야 하는 값 임계값을 선택합니다. 쿼리를 실행하여 이 섹션의 조건을 테스트할 수 있습니다.
  3. 일정: 경고가 실행되도록 주기적인 일정을 설정합니다.
  4. 알림을: 임계값이 예상 범위를 벗어나면 사용자 또는 알림 대상에 경고가 있어야 함을 나타냅니다.
  5. 고급: 고급 설정을 사용하여 특수 값 및 조건을 경고합니다.

중요합니다

베타 기간 동안 경고는 매개 변수가 있는 쿼리를 지원하지 않습니다. 레거시 경고란?을 참조하세요.

다음 단계를 사용하여 경고를 만듭니다.

  1. 사이드바에서 경고 아이콘경고를 클릭하고 경고 만들기를 클릭합니다.

  2. 데이터 세트 편집기에서 다음 쿼리를 복사하여 붙여넣습니다.

    SELECT
      to_date(tpep_pickup_datetime) as date,
      SUM(fare_amount) as amount
    FROM
      `samples`.`nyctaxi`.`trips`
    GROUP BY
      ALL
    ORDER BY
      1 DESC
    
    
  3. 조건 필드에서 경고를 트리거해야 하는 조건을 설정합니다.

    다음 텍스트와 같이 적용된 설정이 있는 조건 필드입니다.

    표시된 대로 다음 설정을 적용합니다.

    • 확인할 데이터 값으로 합계 를 선택합니다. 쿼리 결과에서 열의 첫 번째 값에 경고 조건을 설정하거나 SUM 또는 AVERAGE와 같은 단일 열의 모든 행에 대해 집계를 설정하도록 선택할 수 있습니다.
    • 확인할 열로 을 선택하십시오.
    • 적용할 논리 연산자로 (보다 큼) 선택합니다 > .
    • 임계값을 4000으로 Static value 설정합니다. 정적 값 은 기본적으로 선택됩니다. 값 필드에 4000을 입력합니다.
  4. 테스트 조건을 클릭하여 경고를 미리 확인하고 경고가 현재 데이터로 트리거되는지 여부를 테스트합니다. 제공된 설정은 경고를 트리거해야 합니다. 임계값을 변경하여 추가로 테스트할 수 있습니다.

  5. 일정 드롭다운 메뉴를 사용하여 경고가 매시 정각부터 5분 간격으로 실행되도록 설정합니다. 필요에 따라 cron 구문 보기 확인란을 선택하여 Quartz Cron 구문일정에서 편집합니다.

  6. 알림 섹션에서 사용자 이름을 검색하고 나타나면 클릭합니다.

  7. 만들기를 클릭합니다.

경고가 저장되고 제공한 일정에 따라 실행됩니다. 이 예제에 사용된 데이터는 정적이므로 테스트 조건이트리거됨으로 반환되면 다음에 실행될 때 다시 실행됩니다. 경고로 전자 메일 알림을 받게 됩니다. 테스트 조건이정상으로 반환되면 알림이 전송되지 않습니다.

경고 세부 정보 검토

경고 세부 정보를 표시하는 페이지가 열립니다. 또한 평가 기록 세부 정보와 함께 경고 기록이 표시됩니다. 지금 실행 단추를 클릭하여 경고 쿼리를 미숙하게 실행하여 이 화면에서 결과를 반환합니다.

페이지의 오른쪽 위 모서리에서 편집 을 클릭하여 경고 편집을 계속합니다.

고급 설정

고급 설정을 클릭하여 다음 설정을 적용합니다.

  • 정상 시 알림: 경고가 OK 상태로 돌아오면 알림을 보냅니다.

  • 알림 빈도: 상태가 반환 OK될 때까지 경고에 대한 알림을 주기적으로 보냅니다.

  • 빈 결과 상태: 쿼리가 결과를 반환하지 않을 때 반환할 특수 상태를 설정합니다.

  • 템플렛: 기본 템플릿 또는 사용자 지정 템플릿을 사용하여 알림을 보내도록 선택할 수 있습니다. 다음 목록에서는 각 템플릿 유형에 대해 설명합니다.

    • 기본 템플릿 사용: 경고 알림은 경고 구성 화면과 쿼리 화면에 대한 링크가 있는 메시지입니다.

    • 사용자 지정 템플릿 사용: 경고 알림에는 경고에 대한 보다 구체적인 정보가 포함됩니다.

      1. 제목 및 본문에 대한 입력 필드로 구성된 상자가 표시됩니다. 모든 정적 콘텐츠가 유효하며 기본 제공 템플릿 변수를 통합할 수 있습니다.

        • ALERT_STATUS: 평가된 경고 상태(문자열).
        • ALERT_CONDITION: 경고 조건 연산자(문자열).
        • ALERT_THRESHOLD: 경고 임계값(문자열 또는 숫자).
        • ALERT_COLUMN: 경고 열 이름(문자열)입니다.
        • ALERT_NAME: 경고 이름(문자열).
        • ALERT_URL: 경고 페이지 URL(문자열)입니다.
        • QUERY_NAME: 연결된 쿼리 이름(문자열)입니다.
        • QUERY_URL: 연결된 쿼리 페이지 URL(문자열).
        • QUERY_RESULT_TABLE: 쿼리 결과 HTML 테이블(문자열)입니다. 결과는 처음 100개 행으로 제한됩니다. 이메일 알림 대상만 HTML을 렌더링할 수 있습니다.
        • QUERY_RESULT_VALUE: 쿼리 결과 값(문자열 또는 숫자).
        • QUERY_RESULT_ROWS: 쿼리 결과 행(값 배열).
        • QUERY_RESULT_COLS: 쿼리 결과 열(문자열 배열)입니다.

        예를 들어, 예제 제목은 Alert "{{ALERT_NAME}}" changed status to {{ALERT_STATUS}}가 될 수 있습니다.

      2. HTML을 사용하여 사용자 지정 템플릿에서 메시지의 서식을 지정할 수 있습니다. 이메일 알림 대상만 HTML을 렌더링할 수 있습니다. 템플릿에서 허용되는 태그 및 특성은 다음과 같습니다.

        • Tags: <a>, , <abbr>,<acronym>, <b>, <blockquote>, <body><br>, <code>, <div>, <em>, <h1>, <h2>, <h3>, <h4><h5>, <h6>, <head><hr>, <html><i><li><ol><p><span><strong>, <table>, , <tbody>, <td><th>, , <tr><ul>
        • 특성: href(<a>의 경우), title(<a>, <abbr>, <acronym>의 경우)
      3. 미리 보기 토글 단추를 클릭하여 렌더링된 결과를 미리 봅니다.

        중요합니다

        미리 보기는 템플릿 변수가 올바르게 렌더링되는지 확인하는 데 유용합니다. 각 알림 대상이 알림을 다르게 표시할 수 있으므로 최종 알림 콘텐츠의 정확한 표현은 아닙니다.

작업 영역 관리자는 새 알림 대상을 설정할 수 있습니다. 알림 대상 관리를 참조 하세요.

경고 집계

경고에 대한 집계는 경고에 연결된 Databricks SQL 쿼리의 원래 SQL을 수정하여 작동합니다. 경고는 원래 쿼리 텍스트를 CTE(공용 테이블 식)로 래핑하고 래핑 집계 쿼리를 수행하여 쿼리 결과를 집계합니다.

예를 들어 텍스트 SUMSELECT 1 AS column_name 있는 쿼리에 연결된 경고에 대한 집계는 경고가 새로 고쳐질 WITH q AS (SELECT 1 AS column_name) SELECT SUM(column_name) FROM q때마다 실행되는 수정된 SQL이 다음과 같은 것을 의미합니다.

즉, 경고에 집계가 있을 때마다 원래 쿼리 결과(사전 집계됨)를 경고 사용자 지정 본문에 표시할 수 없습니다(예: QUERY_RESULT_ROWSQUERY_RESULT_COLS등의 매개 변수 포함). 대신 이러한 변수는 집계 후 최종 쿼리 결과만 표시합니다.

참고 항목

집계와 관련된 모든 트리거 조건은 API에서 지원되지 않습니다.

다수의 열에 대한 경고

쿼리의 여러 열을 기반으로 경고를 설정하려면 쿼리에서 경고 논리를 구현하고 트리거할 경고에 대한 부울 값을 반환할 수 있습니다. 예시:

SELECT CASE WHEN drafts_count > 10000 AND archived_count > 5000 THEN 1 ELSE 0 END
FROM (
SELECT sum(CASE WHEN is_archived THEN 1 ELSE 0 END) AS archived_count,
sum(CASE WHEN is_draft THEN 1 ELSE 0 END) AS drafts_count
FROM queries) data

이 쿼리는 다음과 같은 경우1를 반환합니다drafts_count > 10000 and archived_count > 5000. 그런 다음 값이 될 때 트리거하도록 경고를 구성할 수 있습니다 1.

메트릭 뷰에 대한 경고

메트릭 뷰는 핵심 비즈니스 메트릭을 추적하고 측정하도록 설계되었기 때문에 메트릭이 예상 범위를 벗어나면 자동으로 알림을 받을 수 있도록 경고와 잘 연결됩니다. 메트릭 보기에 대한 경고는 다른 데이터 세트에 대한 경고와 동일한 방식으로 작동합니다. 쿼리를 작성하여 쿼리를 구성할 때 모니터링하려는 메트릭 뷰의 정규화된 이름을 사용합니다.

Git 통합이 경고와 작동하는 방식

Databricks Git 폴더를 사용하여 경고에 대한 변경 내용을 추적하고 관리할 수 있습니다. Git을 사용하여 경고를 추적하려면 Databricks Git 폴더에 배치합니다. 새로 복제된 경고는 사용자가 상호 작용한 후에 경고 목록 페이지 또는 API에만 표시됩니다. 일정을 일시 중지했으며 사용자가 명시적으로 다시 시작해야 합니다.

Databricks Git 폴더는 경고 및 기타 작업 영역 개체에 대한 일반적인 Git 작업을 관리하는 중앙 집중식 방법을 제공합니다. 자세한 내용은 Databricks Git 폴더에 대한Git 통합을 참조하세요.

경고 권한 구성 및 경고 소유권 이전

경고 권한 수준은 경고 ACL을 참조 하세요.

  1. 사이드바에서 경고를 클릭합니다.

  2. 경고를 클릭합니다.

  3. 경고 세부 정보 페이지의 오른쪽 위 모서리에서 공유 를 클릭하여 공유 대화 상자를 엽니다.

    경고 권한 관리

  4. 그룹 및 사용자를 검색하여 선택하고 사용 권한 수준을 할당합니다.

  5. 추가를 클릭합니다.

경고의 소유권 이전

경고를 저장하면 경고의 소유자가 됩니다. 경고의 소유자가 작업 영역에서 제거되면 경고에 더 이상 소유자가 없습니다. 작업 영역 관리자 사용자는 경고의 소유권을 다른 사용자에게 이전할 수 있습니다. 서비스 주체 및 그룹은 경고의 소유권을 할당할 수 없습니다. 권한 API를 사용하여 소유권을 이전할 수도 있습니다.

  1. 작업 영역 관리자로 Azure Databricks 작업 영역에 로그인합니다.

  2. 사이드바에서 경고를 클릭합니다.

  3. 경고를 클릭합니다.

  4. 오른쪽 위에 있는 공유 단추를 클릭하여 공유 대화 상자를 엽니다.

  5. 오른쪽 상단의 톱니바퀴 아이콘을 클릭하고 새 소유자 지정을 클릭합니다.

    새 소유자 할당

  6. 소유권을 할당할 사용자를 선택합니다.

  7. 확인을 클릭합니다.