연속 쿼리 - Amazon Kinesis Data Analytics for SQL 애플리케이션 개발자 안내서

새 프로젝트의 경우 Kinesis Data Analytics for SQL 애플리케이션보다 새로운 Managed Service for Apache Flink Studio를 사용하는 것이 좋습니다. Managed Service for Apache Flink Studio는 사용 편의성과 고급 분석 기능을 결합하여 정교한 스트림 처리 애플리케이션을 몇 분 만에 구축할 수 있도록 합니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

연속 쿼리

스트림에 대한 쿼리는 스트리밍 데이터에 대해 연속적으로 실행됩니다. 이러한 연속 실행은 애플리케이션이 스트림을 연속적으로 쿼리하고 알림을 생성하는 시나리오를 가능하게 합니다.

시작하기 연습에서는 명칭이 SOURCE_SQL_STREAM_001인 애플리케이션 내 스트림이 있습니다. 그것은 데모 스트림(Kinesis 데이터 스트림)에서 주식 가격을 지속적으로 받습니다. 스키마는 다음과 같습니다:

(TICKER_SYMBOL VARCHAR(4), SECTOR varchar(16), CHANGE REAL, PRICE REAL)

15%가 넘는 주가 변동에 관심이 있다고 가정해 보겠습니다. 애플리케이션 코드에서 다음 쿼리를 사용할 수 있습니다. 이 쿼리는 연속적으로 실행되며 15%를 초과하는 주가 변동이 감지되는 경우 레코드를 방출합니다.

SELECT STREAM TICKER_SYMBOL, PRICE FROM "SOURCE_SQL_STREAM_001" WHERE (ABS((CHANGE / (PRICE-CHANGE)) * 100)) > 15

다음 절차를 사용하여 Amazon Kinesis Data Analytics 애플리케이션을 설정하고 이 쿼리를 시험합니다.

쿼리 테스트 방법
  1. 시작하기 연습에 따라 애플리케이션을 생성합니다.

  2. 애플리케이션 코드에서 SELECT 문을 앞의 SELECT 쿼리로 바꿉니다. 그러면 애플리케이션 코드가 다음과 같을 것입니다.

    CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" (ticker_symbol VARCHAR(4), price DOUBLE); -- CREATE OR REPLACE PUMP to insert into output CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM" SELECT STREAM TICKER_SYMBOL, PRICE FROM "SOURCE_SQL_STREAM_001" WHERE (ABS((CHANGE / (PRICE-CHANGE)) * 100)) > 15;