Setelah mempertimbangkan dengan cermat, kami memutuskan untuk menghentikan Amazon Kinesis Data Analytics SQL untuk aplikasi dalam dua langkah:
1. Mulai 15 Oktober 2025, Anda tidak akan dapat membuat Kinesis Data Analytics SQL baru untuk aplikasi.
2. Kami akan menghapus aplikasi Anda mulai 27 Januari 2026. Anda tidak akan dapat memulai atau mengoperasikan Amazon Kinesis Data Analytics Anda SQL untuk aplikasi. Support tidak akan lagi tersedia untuk Amazon Kinesis Data Analytics SQL sejak saat itu. Untuk informasi selengkapnya, lihat Amazon Kinesis Data Analytics SQL untuk penghentian Aplikasi.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jendela Tumbling (Agregasi Menggunakan GROUP BY)
Ketika kueri jendela memproses setiap jendela dengan cara yang tidak tumpang tindih, jendela disebut sebagai jendela tumbling. Dalam hal ini, setiap catatan di aliran dalam aplikasi termasuk dalam jendela tertentu. Catatan hanya diproses sekali (ketika kueri memproses jendela tempat catatan berada).
Misalnya, kueri agregasi yang menggunakan klausa GROUP BY
memproses baris dalam jendela tumbling. Aliran demo dalam latihan memulai menerima data harga saham yang dipetakan ke aliran dalam aplikasi SOURCE_SQL_STREAM_001
dalam aplikasi Anda. Aliran ini memiliki skema berikut.
(TICKER_SYMBOL VARCHAR(4), SECTOR varchar(16), CHANGE REAL, PRICE REAL)
Dalam kode aplikasi Anda, misalkan Anda ingin menemukan harga agregat (min, max) untuk setiap ticker selama jendela satu menit. Anda dapat menggunakan kueri berikut.
SELECT STREAM ROWTIME, Ticker_Symbol, MIN(Price) AS Price, MAX(Price) AS Price FROM "SOURCE_SQL_STREAM_001" GROUP BY Ticker_Symbol, STEP("SOURCE_SQL_STREAM_001".ROWTIME BY INTERVAL '60' SECOND);
Sebelumnya adalah contoh kueri jendela yang berbasis waktu. Kueri mengelompokkan catatan berdasarkan nilai ROWTIME
. Untuk pelaporan per menit, fungsi STEP
membulatkan nilai ROWTIME
ke menit terdekat.
catatan
Anda juga dapat menggunakan fungsi FLOOR
untuk mengelompokkan catatan ke jendela. Namun, FLOOR
hanya dapat membulatkan nilai waktu ke unit waktu keseluruhan (jam, menit, detik, dan sebagainya). STEP
direkomendasikan untuk mengelompokkan catatan ke jendela tumbling karena dapat membulatkan nilai ke interval arbitrer, misalnya, 30 detik.
Kueri ini adalah contoh jendela non-tumpang tindih (tumbling). Klausa GROUP
BY
mengelompokkan catatan dalam jendela satu menit, dan setiap catatan termasuk ke jendela tertentu (tidak tumpang tindih). Kueri memancarkan satu catatan output per menit, memberikan harga ticker min/maks. yang tercatat pada menit tertentu. Tipe kueri berguna untuk membuat laporan berkala dari aliran data input. Dalam contoh ini, laporan dihasilkan setiap menit.
Untuk menguji kueri
-
Siapkan aplikasi dengan mengikuti latihan memulai.
-
Ubah pernyataan
SELECT
dalam kode aplikasi menggunakan kueriSELECT
sebelumnya. Kode aplikasi yang dihasilkan ditampilkan sebagai berikut:CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" ( ticker_symbol VARCHAR(4), Min_Price DOUBLE, Max_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, MIN(Price) AS Min_Price, MAX(Price) AS Max_Price FROM "SOURCE_SQL_STREAM_001" GROUP BY Ticker_Symbol, STEP("SOURCE_SQL_STREAM_001".ROWTIME BY INTERVAL '60' SECOND);