Azure Stream Analytics 코드 없는 편집기를 사용하여 Azure SQL 데이터베이스에 데이터 변환 및 저장
이 문서에서는 코드 없는 편집기를 사용하여 Event Hubs 인스턴스(이벤트 허브)에서 데이터를 지속적으로 읽고, 데이터를 변환한 다음, 결과를 Azure SQL 데이터베이스에 쓰는 Stream Analytics 작업을 쉽게 만드는 방법을 설명합니다.
필수 조건
Azure Event Hubs 및 Azure SQL 데이터베이스 리소스는 공개적으로 액세스할 수 있어야 하며 방화벽 뒤에 있거나 Azure Virtual Network에서 보호되면 안 됩니다. Event Hubs의 데이터는 JSON, CSV 또는 Avro 형식으로 직렬화되어야 합니다.
이 문서의 단계를 시도하려면 다음 단계를 수행합니다.
아직 이벤트 허브가 없는 경우 이벤트 허브를 만듭니다. 이벤트 허브에서 데이터를 생성합니다. Event Hubs 인스턴스 페이지의 왼쪽 메뉴에서 데이터 생성(미리 보기)을 선택하고 데이터 세트에 대한 데이터 재고를 선택한 다음 보내기를 선택하여 일부 샘플 데이터를 이벤트 허브로 보냅니다. 이 문서의 단계를 테스트하려면 이 단계가 필요합니다.
Azure SQL 데이터베이스 만들기합니다. 다음은 데이터베이스를 만드는 동안 유의해야 할 몇 가지 중요한 사항입니다.
기본 사항 페이지에서 서버에 대해 새로 만들기를 선택합니다. 그런 다음, SQL Database 서버 만들기 페이지에서 SQL 인증 사용을 선택하고 관리자 사용자 ID 및 암호를 지정합니다.
네트워킹 페이지에서 다음 단계를 수행합니다.
- 공용 엔드포인트를 사용합니다.
- Azure 서비스 및 리소스가 이 서버에 액세스할 수 있도록 허용에 대해 예를 선택합니다.
- 현재 클라이언트 IP 주소 추가에 대해 예를 선택합니다.
추가 설정 페이지에서 기존 데이터 사용에 대해 없음을 선택합니다.
이 문서에서는 데이터베이스 쿼리 및 리소스 정리 섹션의 단계를 건너뜁니다.
단계를 테스트하려면 쿼리 편집기(미리 보기)를 사용하여 SQL 데이터베이스에 테이블을 만듭니다.
create table stocks ( symbol varchar(4), price decimal )
코드 없는 편집기를 사용하여 Stream Analytics 작업 만들기
이 섹션에서는 코드 없는 편집기를 사용하여 Azure Stream Analytics 작업을 만듭니다. 이 작업은 Event Hubs 인스턴스(이벤트 허브)에서 데이터 스트리밍을 변환하고 결과 데이터를 Azure SQL 데이터베이스에 저장합니다.
Azure Portal에서 이벤트 허브의 Event Hubs 인스턴스 페이지로 이동합니다.
왼쪽 메뉴에서 기능>데이터 처리를 선택한 다음, 데이터를 SQL 데이터베이스로 변환 및 저장 카드에서 시작을 선택합니다.
Stream Analytics 작업의 이름을 입력한 다음, 만들기를 선택합니다. 오른쪽에 Event Hubs 창과 함께 Stream Analytics 작업 다이어그램이 표시됩니다.
이벤트 허브 창에서 serialization 및 인증 모드 설정을 검토하고 연결을 선택합니다.
연결이 성공적으로 설정되고 Event Hubs 인스턴스에 데이터가 있는 경우 다음 두 가지가 표시됩니다.
그룹화 기준 타일을 선택하여 데이터를 집계합니다. 그룹화 기준 구성 패널에서 시간 범위와 함께 그룹화 기준으로 사용할 필드를 지정할 수 있습니다.
다음 예제에서는 가격 및 기호의 평균이 사용됩니다.
데이터 미리 보기 섹션에서 단계 결과의 유효성을 검사할 수 있습니다.
필드 관리 타일을 선택합니다. 필드 관리 구성 패널에서 필드 추가 - >가져온 스키마 - > 필드를 선택하여 출력할 필드를 선택합니다.
모든 필드를 추가하려면 모든 필드 추가를 선택합니다. 필드를 추가하는 동안 출력에 다른 이름을 지정할 수 있습니다. 예를 들면,
AVG_Value
를Value
로 입력합니다. 선택 항목을 저장하면 데이터 미리 보기 창에 데이터가 표시됩니다.다음 예제에서는 기호 및 AVG_Value를 선택했습니다. 기호는 기호에 매핑되고 AVG_Value는 가격에 매핑됩니다.
SQL 타일을 선택합니다. SQL Database 구성 패널에서 필요한 매개 변수를 입력하고 연결합니다. 테이블을 자동으로 선택하려면 기존 테이블 로드를 선택합니다. 다음 예제에서는
[dbo].[stocks]
가 선택되었습니다. 그런 다음, 연결을 선택합니다.참고 항목
쓰도록 선택하는 테이블의 스키마는 데이터 미리 보기에서 생성하는 필드 수, 해당 형식과 정확히 일치해야 합니다.
데이터 미리 보기 창에 SQL 데이터베이스에서 수집되는 데이터 미리 보기가 표시됩니다.
저장을 선택한 다음, Stream Analytics 작업 시작을 선택합니다.
작업을 시작하려면 다음을 지정합니다.
시작을 선택한 후 작업은 2분 내에 실행을 시작합니다. 아래쪽 창에 메트릭 패널이 열려 있습니다. 이 패널이 업데이트되는 데는 시간이 약간 걸립니다. 패널의 오른쪽 위 모서리에서 새로 고침을 선택하여 차트를 새로 고칩니다. 웹 브라우저의 별도의 탭 또는 창에서 다음 단계를 진행합니다.
Stream Analytics 작업 탭의 데이터 처리 섹션 아래에서 작업을 볼 수 있습니다. 메트릭 열기를 선택하여 필요에 따라 모니터링하거나 메트릭을 중지했다 다시 시작합니다.
별도의 브라우저 창 또는 탭에서 포털의 이벤트 허브로 이동하여 필수 구성 요소에서 수행한 것과 마찬가지로 샘플 스톡 데이터를 다시 보냅니다. Event Hubs 인스턴스 페이지의 왼쪽 메뉴에서 데이터 생성(미리 보기)을 선택하고 데이터 세트에 대한 데이터 재고를 선택한 다음 보내기를 선택하여 일부 샘플 데이터를 이벤트 허브로 보냅니다. 메트릭 패널이 업데이트된 것을 확인하는 데 몇 분 정도 걸립니다.
Azure SQL 데이터베이스에 삽입된 레코드가 표시됩니다.
Event Hubs 지역 복제 기능을 사용할 때 고려 사항
Azure Event Hubs는 최근 공개 미리 보기에서 지역에서 복제 기능을 시작했습니다. 이 기능은 Azure Event Hubs의 지역 재해 복구 기능과 다릅니다.
장애 조치(failover) 유형이 강제 이고 복제 일관성이 비동기인 경우 Stream Analytics 작업은 Azure Event Hubs 출력에 대한 출력을 정확히 한 번 보장하지 않습니다.
Azure Stream Analytics는 이벤트 허브의 출력을 사용하는 생산자로서 기본 및 보조 간의 복제 지연이 구성된 최대 지연 시간에 도달할 경우 장애 조치(failover) 기간 동안 및 Event Hubs에 의해 제한되는 동안 작업에 워터마크 지연을 관찰할 수 있습니다.
Azure Stream Analytics는 Event Hubs를 입력으로 사용하는 소비자로서 장애 조치 기간 동안 작업의 워터마크 지연을 관찰할 수 있으며 장애 조치(failover)가 완료된 후 데이터를 건너뛰거나 중복 데이터를 찾을 수 있습니다.
이러한 주의 사항으로 인해 Event Hubs 장애 조치(failover)가 완료된 직후 적절한 시작 시간으로 Stream Analytics 작업을 다시 시작하는 것이 좋습니다. 또한 Event Hubs 지역 복제 기능은 공개 미리 보기 상태이므로 이 시점에서 프로덕션 Stream Analytics 작업에 이 패턴을 사용하지 않는 것이 좋습니다. Event Hubs 지역 복제 기능을 일반적으로 사용할 수 있고 Stream Analytics 프로덕션 작업에서 사용할 수 있기 전에 현재 Stream Analytics 동작이 개선됩니다.
다음 단계
Azure Stream Analytics 및 직접 만든 작업을 모니터링하는 방법에 대해 자세히 알아봅니다.