

Setelah mempertimbangkan dengan cermat, kami memutuskan untuk menghentikan Amazon Kinesis Data Analytics untuk aplikasi SQL:

1. Mulai **1 September 2025,** kami tidak akan memberikan perbaikan bug apa pun untuk Amazon Kinesis Data Analytics untuk aplikasi SQL karena kami akan memiliki dukungan terbatas untuk itu, mengingat penghentian yang akan datang.

2. Mulai **15 Oktober 2025,** Anda tidak akan dapat membuat Kinesis Data Analytics baru untuk aplikasi SQL.

3. Kami akan menghapus aplikasi Anda mulai **27 Januari 2026**. Anda tidak akan dapat memulai atau mengoperasikan Amazon Kinesis Data Analytics untuk aplikasi SQL. Support tidak akan lagi tersedia untuk Amazon Kinesis Data Analytics untuk SQL sejak saat itu. Untuk informasi selengkapnya, lihat [Amazon Kinesis Data Analytics untuk penghentian Aplikasi SQL](discontinuation.md).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan Fungsi Lambda sebagai Output
<a name="how-it-works-output-lambda"></a>

Menggunakan AWS Lambda sebagai tujuan memungkinkan Anda untuk lebih mudah melakukan pasca-pemrosesan hasil SQL Anda sebelum mengirimnya ke tujuan akhir. Tugas pasca-pemrosesan umum meliputi berikut ini:
+ Menggabungkan beberapa baris ke dalam satu catatan
+ Menggabungkan hasil saat ini dengan hasil sebelumnya untuk mengatasi data yang datang terlambat
+ Mengirimkan ke berbagai tujuan berdasarkan tipe informasi
+ Terjemahan format catatan (seperti menerjemahkan ke Protobuf)
+ Manipulasi atau transformasi string
+ Pengayaan data setelah pemrosesan analitik
+ Pemrosesan khusus untuk kasus penggunaan geospasial
+ Enkripsi data

Fungsi Lambda dapat memberikan informasi analitik ke berbagai AWS layanan dan tujuan lainnya, termasuk yang berikut:
+ [Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/) (Amazon S3)
+ Kustom APIs
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/)
+ [Amazon Aurora](http://aurora.apache.org/)
+ [Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/)
+ [Layanan Pemberitahuan Sederhana Amazon (Amazon SNS)](https://docs.aws.amazon.com/sns/latest/dg/)
+ [Amazon Simple Queue Service](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/) (Amazon SQS)
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/)

Untuk informasi selengkapnya tentang membuat aplikasi Lambda, lihat [Memulai dengan AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/getting-started.html).

**Topics**
+ [Lambda sebagai Izin Output](#how-it-works-output-lambda-perms)
+ [Lambda sebagai Metrik Output](#how-it-works-output-lambda-metrics)
+ [Lambda sebagai Model Data Input Peristiwa Output dan Model Respons Catatan](#how-it-works-output-lambda-model)
+ [Frekuensi Invokasi Output Lambda](#how-it-works-output-lambda-frequency)
+ [Menambahkan Fungsi Lambda untuk Digunakan sebagai Output](#how-it-works-output-lambda-procedure)
+ [Lambda umum sebagai Kegagalan Output](#how-it-works-output-lambda-troubleshooting)
+ [Membuat Fungsi Lambda untuk Tujuan Aplikasi](how-it-works-output-lambda-functions.md)

## Lambda sebagai Izin Output
<a name="how-it-works-output-lambda-perms"></a>

Untuk menggunakan Lambda sebagai output, IAM role output Lambda aplikasi memerlukan kebijakan izin berikut:

```
{
   "Sid": "UseLambdaFunction",
   "Effect": "Allow",
   "Action": [
       "lambda:InvokeFunction",
       "lambda:GetFunctionConfiguration"
   ],
   "Resource": "{{FunctionARN}}"
}
```

## Lambda sebagai Metrik Output
<a name="how-it-works-output-lambda-metrics"></a>

Anda menggunakan Amazon CloudWatch untuk memantau jumlah byte yang dikirim, keberhasilan dan kegagalan, dan sebagainya. [Untuk informasi tentang CloudWatch metrik yang dipancarkan oleh Kinesis Data Analytics menggunakan Lambda sebagai output, lihat Metrik Amazon Kinesis Analytics.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aka-metricscollected.html)

## Lambda sebagai Model Data Input Peristiwa Output dan Model Respons Catatan
<a name="how-it-works-output-lambda-model"></a>

Untuk mengirim catatan output Kinesis Data Analytics, fungsi Lambda Anda harus sesuai dengan data input peristiwa yang diperlukan dan model respons catatan. 

### Model Data Input Peristiwa
<a name="how-it-works-output-lambda-model-request"></a>

Kinesis Data Analytics terus mengirimkan catatan output dari aplikasi ke Lambda sebagai fungsi output dengan model permintaan berikut. Dalam fungsi Anda, Anda mengulangi melalui daftar dan menerapkan logika bisnis Anda untuk memenuhi persyaratan output Anda (seperti transformasi data sebelum mengirim ke tujuan akhir).


<table>
<thead>
  <tr><th>Bidang</th><th>Deskripsi</th></tr>
</thead>
<tbody>
  <tr><td>invocationId</td><td>ID invokasi Lambda (GUID acak).</td></tr>
  <tr><td>applicationArn</td><td>Amazon Resource Name (ARN) aplikasi Kinesis Data Analytics.</td></tr>
  <tr><td colspan="2">catatan [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/kinesisanalytics/latest/dev/how-it-works-output-lambda.html) </td></tr>
</tbody>
</table>


**catatan**  
`retryHint` adalah nilai yang meningkat untuk setiap kegagalan pengiriman. Nilai ini tidak bertahan lama, dan menyetel ulang jika aplikasi terganggu.

### Model Respons Catatan
<a name="how-it-works-output-lambda-model-response"></a>

Setiap catatan yang dikirim ke Lambda Anda sebagai fungsi output (dengan catatan IDs) harus diakui dengan salah satu `Ok` atau`DeliveryFailed`, dan harus berisi parameter berikut. Jika tidak, Kinesis Data Analytics menganggapnya sebagai kegagalan pengiriman.


| Bidang | Deskripsi | 
| --- | --- | 
| catatan [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/kinesisanalytics/latest/dev/how-it-works-output-lambda.html)  | 
| recordId | ID catatan diteruskan dari Kinesis Data Analytics ke Lambda selama invokasi. Ketidakcocokan apa pun antara ID catatan asli dan ID catatan yang dibenarkan dianggap sebagai kegagalan pengiriman. | 
| result | Status pengiriman catatan. Berikut adalah nilai yang mungkin: [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/kinesisanalytics/latest/dev/how-it-works-output-lambda.html)  | 

## Frekuensi Invokasi Output Lambda
<a name="how-it-works-output-lambda-frequency"></a>

Aplikasi Kinesis Data Analytics menyangga catatan output dan sering memanggil fungsi tujuan AWS Lambda .
+ Jika catatan dipancarkan ke aliran dalam aplikasi tujuan dalam aplikasi analitik data sebagai jendela jatuh, fungsi AWS Lambda tujuan dipanggil per pemicu jendela jatuh. Misalnya, jika jendela tumbling senilai 60 detik digunakan untuk memancarkan catatan ke aliran dalam aplikasi tujuan, fungsi Lambda dipanggil sekali setiap 60 detik.
+ Jika catatan dipancarkan ke aliran dalam aplikasi tujuan di aplikasi sebagai kueri berkelanjutan atau jendela geser, fungsi tujuan Lambda dipanggil sekitar sekali per detik.

**catatan**  
[Fungsi per Lambda memanggil batas ukuran muatan permintaan](https://docs.aws.amazon.com/lambda/latest/dg/limits.html) berlaku. Melebihi batas tersebut menghasilkan catatan output yang dibagi dan dikirim di beberapa panggilan fungsi Lambda.

## Menambahkan Fungsi Lambda untuk Digunakan sebagai Output
<a name="how-it-works-output-lambda-procedure"></a>

Prosedur berikut menunjukkan cara menambahkan fungsi Lambda sebagai output untuk aplikasi Kinesis Data Analytics.

1. [Masuk ke Konsol Manajemen AWS dan buka Managed Service for Apache Flink console di https://console.aws.amazon.com /kinesisanalytics.](https://console.aws.amazon.com/kinesisanalytics)

1. Pilih aplikasi dalam daftar, lalu pilih **Application details** (Detail aplikasi).

1. Di bagian **Destination** (Tujuan), pilih **Connect new destination** (Sambungkan tujuan baru).

1. Untuk item **Destination** (Tujuan), pilih **fungsi AWS Lambda **.

1. Di bagian **Kirim catatan ke AWS Lambda**, pilih fungsi atau versi Lambda yang sudah ada, atau pilih **Create new** (Buat baru).

1. Jika Anda membuat fungsi Lambda baru, lakukan hal berikut:

   1. Pilih salah satu templat yang disediakan. Untuk informasi selengkapnya, lihat [Membuat Fungsi Lambda untuk Tujuan Aplikasi](how-it-works-output-lambda-functions.md).

   1. Halaman **Buat Fungsi** terbuka di tab peramban baru. Di kotak **Name** (Nama), beri nama yang bermakna untuk fungsi (misalnya, **myLambdaFunction**).

   1. Perbarui templat dengan fungsi pasca-pemrosesan untuk aplikasi Anda. Untuk informasi tentang cara membuat fungsi Lambda, lihat [Memulai](https://docs.aws.amazon.com/lambda/latest/dg/getting-started.html) dalam *Panduan Developer AWS Lambda *.

   1. Di konsol Kinesis Data Analytics, dalam daftar **Fungsi Lambda**, pilih fungsi Lambda yang baru saja Anda buat. Pilih **$LATEST** untuk versi fungsi Lambda.

1. Di bagian **In-application stream** (Aliran dalam aplikasi), pilih **Choose an existing in-application stream** (Pilih aliran dalam aplikasi yang sudah ada). Untuk **Nama aliran dalam aplikasi**, pilih aliran output aplikasi Anda. Hasil dari aliran output yang dipilih dikirim ke fungsi output Lambda.

1. Biarkan sisa formulir dengan nilai default, dan pilih **Save and continue** (Simpan dan lanjutkan).

Aplikasi Anda sekarang mengirimkan catatan dari aliran dalam aplikasi ke fungsi Lambda Anda. Anda dapat melihat hasil template default di CloudWatch konsol Amazon. Pantau metrik `AWS/KinesisAnalytics/LambdaDelivery.OkRecords` untuk melihat jumlah catatan yang dikirim ke fungsi Lambda.

## Lambda umum sebagai Kegagalan Output
<a name="how-it-works-output-lambda-troubleshooting"></a>

Berikut adalah alasan umum pengiriman ke fungsi Lambda dapat gagal.
+ Tidak semua catatan (dengan catatan IDs) dalam batch yang dikirim ke fungsi Lambda dikembalikan ke layanan Kinesis Data Analytics. 
+ Respons kehilangan ID catatan atau bidang status. 
+ Waktu habis fungsi Lambda tidak cukup untuk mencapai logika bisnis dalam fungsi Lambda.
+ Logika bisnis dalam fungsi Lambda tidak menangkap semua kesalahan, yang mengakibatkan waktu habis dan tekanan balik karena pengecualian yang tidak ditangani. Ini sering disebut sebagai pesan “pil beracun”.

Untuk kegagalan pengiriman data, Kinesis Data Analytics terus mencoba kembali invokasi Lambda pada kumpulan catatan yang sama hingga berhasil. Untuk mendapatkan wawasan tentang kegagalan, Anda dapat memantau CloudWatch metrik berikut: 
+ Aplikasi Kinesis Data Analytics Lambda sebagai metrik CloudWatch Output: Menunjukkan jumlah keberhasilan dan kegagalan, di antara statistik lainnya. Untuk informasi selengkapnya, lihat [Metrik Amazon Kinesis Analytics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aka-metricscollected.html).
+ AWS Lambda CloudWatch metrik fungsi dan log.