Amazon Timestream for LiveAnalytics와 유사한 기능을 사용하려면 Amazon Timestream for InfluxDB를 고려하세요. 실시간 분석을 위해 간소화된 데이터 수집 및 한 자릿수 밀리초 쿼리 응답 시간을 제공합니다. 여기에서 자세히 알아보세요.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
기본 테이블의 쿼리와 예약된 쿼리 결과의 쿼리 비교
이 Timestream 쿼리 예제에서는 다음 스키마, 예제 쿼리 및 출력을 사용하여 기본 테이블의 쿼리를 예약된 쿼리 결과의 파생 테이블의 쿼리와 비교합니다. 잘 계획된 예약 쿼리를 사용하면 원래 기본 테이블에서 가능한 것보다 더 빠른 쿼리로 이어질 수 있는 행 및 기타 특성이 적은 파생 테이블을 가져올 수 있습니다.
이 시나리오를 설명하는 비디오는 Amazon Timestream for LiveAnalytics의 쿼리 성능 개선 및 예약된 쿼리를 사용하여 비용 절감
이 예제에서는 다음 시나리오를 사용합니다.
-
리전 - us-east-1
-
기본 테이블 -
"clickstream"."shopping"
-
파생 테이블 -
"clickstream"."aggregate"
기본 테이블
다음은 기본 테이블의 스키마를 설명합니다.
열 | 유형 | LiveAnalytics 속성 유형의 Timestream |
---|---|---|
채널 |
varchar |
멀티 |
설명 |
varchar |
멀티 |
이벤트 |
varchar |
DIMENSION |
ip_address |
varchar |
DIMENSION |
measure_name |
varchar |
MEASURE_NAME |
product |
varchar |
멀티 |
product_id |
varchar |
멀티 |
quantity |
double |
멀티 |
쿼리 |
varchar |
멀티 |
session_id |
varchar |
DIMENSION |
user_group |
varchar |
DIMENSION |
user_id |
varchar |
DIMENSION |
다음은 기본 테이블의 치수를 설명합니다. 기본 테이블은 예약된 쿼리가 실행되는 Timestream의 테이블을 나타냅니다.
-
measure_name –
metrics
-
데이터 - 다중
-
차원:
[ ( user_group, varchar ),( user_id, varchar ),( session_id, varchar ),( ip_address, varchar ),( event, varchar ) ]
기본 테이블에 대한 쿼리
다음은 지정된 시간 범위에서 5분 집계로 수를 수집하는 임시 쿼리입니다.
SELECT BIN(time, 5m) as time, channel, product_id, SUM(quantity) as product_quantity FROM "clickstream"."shopping" WHERE BIN(time, 5m) BETWEEN '2023-05-11 10:10:00.000000000' AND '2023-05-11 10:30:00.000000000' AND channel = 'Social media' and product_id = '431412' GROUP BY BIN(time, 5m),channel,product_id
출력:
duration:1.745 sec Bytes scanned: 29.89 MB Query Id: AEBQEANMHG7MHHBHCKJ3BSOE3QUGIDBGWCCP5I6J6YUW5CVJZ2M3JCJ27QRMM7A Row count:5
예약된 쿼리
다음은 5분마다 실행되는 예약된 쿼리입니다.
SELECT BIN(time, 5m) as time, channel as measure_name, product_id, product, SUM(quantity) as product_quantity FROM "clickstream"."shopping" WHERE time BETWEEN BIN(@scheduled_runtime, 5m) - 10m AND BIN(@scheduled_runtime, 5m) - 5m AND channel = 'Social media' GROUP BY BIN(time, 5m), channel, product_id, product
파생 테이블에 대한 쿼리
다음은 파생 테이블의 임시 쿼리입니다. 파생 테이블은 예약된 쿼리의 결과가 포함된 Timestream 테이블을 나타냅니다.
SELECT time, measure_name, product_id,product_quantity FROM "clickstream"."aggregate" WHERE time BETWEEN '2023-05-11 10:10:00.000000000' AND '2023-05-11 10:30:00.000000000' AND measure_name = 'Social media' and product_id = '431412'
출력:
duration: 0.2960 sec Bytes scanned: 235.00 B QueryID: AEBQEANMHHAAQU4FFTT6CFM6UYXTL4SMLZV22MFP4KV2Z7IRVOPLOMLDD6BR33Q Row count: 5
비교
다음은 기본 테이블의 쿼리 결과를 파생 테이블의 쿼리와 비교한 것입니다. 예약된 쿼리를 통해 결과를 집계한 파생 테이블에서 동일한 쿼리는 스캔한 바이트 수를 줄이면서 더 빠르게 완료됩니다.
이러한 결과는 예약된 쿼리를 사용하여 더 빠른 쿼리를 위해 데이터를 집계하는 값을 보여줍니다.
기본 테이블에 대한 쿼리 | 파생 테이블에 대한 쿼리 | |
---|---|---|
지속 시간 |
1.745초 |
0.2960초 |
스캔된 바이트 |
29.89MB |
235바이트 |
행 수 |
5 |
5 |