수동 데이터 검사를 문제가 발생하는 즉시 감지하는 자동 모니터링으로 전환하세요
작성자: Srilekha Dornadula
많은 조직에서 데이터 모니터링은 여전히 수동적이고 반복적인 작업입니다. 매일 아침 같은 대시보드를 열고, 같은 쿼리를 다시 실행하고, 이상 징후를 검색합니다. 누군가 "이 지표가 왜 떨어졌지?"라고 묻기도 전에, 이미 몇 시간 또는 며칠 동안 잘못되었을 가능성이 높으며, 보통 이해 관계자나 이미 잘못된 숫자를 전달한 다운스트림 보고서에 의해 플래그가 지정됩니다. 수정 작업 또한 수동적인 의식입니다. 이는 작동할 때는 괜찮지만, 팀, 환경 또는 프로덕션 워크로드 전반에 걸쳐 확장할 수 없으며 모니터링 비용은 계속 증가합니다.
오늘 저희는 Databricks SQL Alerts가 일반적으로 사용 가능(GA)하며, 4,000명 이상의 고객이 이미 프로덕션에서 Alerts를 사용하고 있음을 발표합니다. SQL Alerts는 이러한 수동적인 작업을 안정적이고 자동화된 모니터링으로 전환합니다. SQL에서 메트릭 또는 조건을 한 번 정의하고, 예약에 따라(또는 데이터를 생성하는 파이프라인과 함께) 평가하고, 임계값을 초과하면 올바른 담당자에게 알립니다. 비즈니스 KPI(예: 수익)를 추적하든, 파이프라인 신선도와 같은 운영 상태를 추적하든, 데이터 품질 문제를 추적하든, SQL Alerts는 문제를 조기에 감지하고, 수동적인 점검을 줄이며, 사용량이 증가함에 따라 모니터링을 일관되게 유지하는 데 도움이 됩니다.
“이상 탐지 서비스에 SQL Alerts를 구현함으로써 관찰 가능성이 훨씬 간단해졌습니다. 모니터링 인프라를 유지 관리하는 대신, 이제 Alerts를 사용하여 문제를 검색하고 사용자에게 알릴 수 있습니다. 단순화된 인터페이스와 사용자 정의 가능한 경험은 저희 팀의 수동적인 노력을 줄여 문제를 더 빨리 식별하는 데 도움이 되었습니다.” —Enrique Olivares, Big Data Software Development Engineer, Zillow
SQL Alert는 SQL 쿼리, 평가 조건, 예약 및 알림 대상을 묶습니다. 쿼리 결과가 예약된 실행에서 조건을 초과하면 Databricks는 구성한 채널을 통해 올바른 담당자에게 알립니다.
SQL Alerts로 팀이 할 수 있는 일:
대시보드가 중단되기 전에 사용자 정의 데이터 품질 문제를 감지합니다. Null 비율이 임계값을 초과하거나, 중복 키가 나타나거나, 분포가 예상 범위를 벗어나면 알림을 보냅니다.

SQL Alerts GA에는 프로덕션에서 알림을 작성, 운영 및 확장하는 데 필요한 모든 것이 포함됩니다.
“기본 Databricks 통합은 Alerts를 정의하기 쉽게 만들고 운영하기에 안정적으로 만듭니다. Git을 통해 버전 관리되는 단일 위치에서 Alert 로직, 예약 및 알림을 관리함으로써 모니터링을 표준화하고 수동 노력을 훨씬 적게 들이면서 문제를 더 빨리 감지하는 데 도움이 되었습니다.” —Tom Potash, Software Engineering Manager at DoubleVerify
이제 SQL Alerts의 가치를 보여주는 예제를 살펴보겠습니다. 일반적인 비즈니스 모니터링 요구 사항은 최근 기준선 대비 예상치 못한 수익 감소를 감지하는 것입니다. 이 예제는 어제 수익을 7일 평균과 비교하는 알림을 생성하고, 5%를 초과하는 감소가 발생하면 올바른 사람들에게 알리는 방법을 보여줍니다.
이 쿼리는 어제 수익을 계산하고 7일 평균과 비교합니다.
출력: 알림이 평가하는 단일 열인 `revenue_pct_change`입니다. 이 알림은 수익 감소가 5%를 초과하므로 트리거됩니다.
편집기에서 조건을 revenue_pct_change -5로 설정하고 알림 수신자를 추가합니다. 또한 풍부한 마크다운 편집기를 사용하여 알림 템플릿을 사용자 정의하여 알림에 더 많은 컨텍스트나 다음 단계를 추가할 수 있습니다.

평가를 위한 빈도를 선택합니다. 예를 들어, 비즈니스에 중요한 KPI의 경우 매일 평가하면 24시간 이내에 변경 사항이 감지됩니다.
알림이 트리거되면 수신자는 알림 평 가 상태, 결과, 알림 링크 및 최근 실행 기록이 포함된 알림을 받습니다. 즉시 조사를 시작할 수 있습니다.

SQL Alerts에는 전체 실행 기록이 포함된 포괄적인 알림 세부 정보 페이지도 포함되어 있어 각 평가가 언제 실행되었는지, 알림이 트리거되었는지 여부, 알림을 받은 대상 등을 보여줍니다. 이를 통해 팀은 모니터링이 예상대로 실행되고 있는지 확인하고 알림이 트리거되기 시작한 시점을 보여줌으로써 더 빨리 분류할 수 있습니다.

Genie Code를 사용하면 위의 단계별 안내가 한 번의 프롬프트로 완료됩니다. 자연어로 원하는 알림을 설명하면("주간 대비 일일 수익이 5% 이상 감소하면 알려줘"), Genie Code가 알림을 처음부터 끝까지 자동으로 생성해 줍니다. 언제든지 Genie에게 수정을 요청하거나 알림 UI를 열어 직접 수정할 수 있습니다.


독립형 SQL 알림은 파이프라인과 별개로 자체 일정에 따라 실행됩니다. 이는 많은 모니터링 사용 사례에 적합합니다. 즉, 업스트림 데이터가 언제 도착하는지 신경 쓰지 않는 모든 경우에 해당합니다.
하지만 일부 검사는 데이터를 생성하는 파이프라인 내부에 있어야 합니다. 예를 들어, '이 로드가 완료된 데이터를 모두 로드했는가?', '게시하기 전에 이 지표가 정상인가?', '다음 단계를 실행해야 하는가?'와 같은 경우입니다. 이러한 검사를 독립형 예약 알림으로 실행하면 알림이 데이터 생성 파이프라인과 별개의 자체 일정에 따라 실행되며, 그 결과는 파이프라인에서 다음에 발생하는 일에 영향을 줄 수 없습니다.
이제 Lakeflow 작업의 새로운 SQL 알림 작업(Public Preview)을 사용하면 정확히 이 작업을 수행할 수 있습니다. 동일한 알림 객체를 이제 작업의 일부로 파이프라인 내에서 실행할 수 있습니다. 또한 평가 상태(OK, TRIGGERED 또는 ERROR)를 작업의 출력 값으로 노출하여 다운스트림에서 참조할 수 있습니다.

파이프라인 은 매시간 신용카드 거래 내역을 로드합니다. 로드 후 사기율이 급증하면 사기 운영팀은 즉시 조사해야 합니다.
로드 단계 바로 뒤에 SQL 알림 작업을 추가하여 사기 플래그 비율이 임계값을 초과하는지 확인합니다. 그런 다음 {{tasks.Alert-FraudRateCheck.output.alert_state}} == "TRIGGERED" 조건을 가진 If/Else 작업을 추가합니다. 알림이 OK를 반환하면 파이프라인은 일반 BI 보고로 계속 진행됩니다. TRIGGERED이면 판매자 카테고리 및 지역별 분석을 생성하고 사기 운영팀에 이메일을 보내는 진단 노트북으로 라우팅됩니다. 동일한 알림 객체가 파이프라인 흐름을 제어할 수 있습니다!

알림이 여러 팀과 환경에 걸쳐 확장됨에 따라, 알림 생성에서 시간이 지남에 따라 안정적으로 관리하는 것으로 과제가 전환됩니다. SQL 알림은 다음과 같은 기능을 통해 프로덕션 워크플로우를 처리하도록 구축되었습니다.
이미 SQL 알림을 사용하고 있는 4,000개 이상의 고객과 함께하세요. 첫 알림 설정은 단 5분이면 충분합니다. SQL 알림 설명서를 읽고 수동으로 주기적으로 확인하던 모니터링 쿼리로 시작해 보세요!
(이 글은 AI의 도움을 받아 번역되었습니다. 원문이 궁금하시다면 여기를 클릭해 주세요)
블로그를 구독하고 최신 게시물을 이메일로 받아보세요.