Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memproses catatan DynamoDB dengan Lambda
Buat pemetaan sumber kejadian untuk memberi tahu Lambda agar mengirim rekaman dari aliran Anda ke fungsi Lambda. Anda dapat membuat beberapa pemetaan sumber kejadian untuk memproses data yang sama dengan beberapa fungsi Lambda, atau untuk memproses item dari beberapa aliran dengan satu fungsi.
Untuk mengonfigurasi fungsi agar dibaca dari DynamoDB Streams, lampirkan AWSLambda kebijakan terkelola AWS Peran DBExecutionDynamo ke peran eksekusi, lalu buat pemicu DynamoDB.
Untuk menambahkan izin dan membuat pemicu
Buka Halaman fungsi
di konsol Lambda. -
Pilih nama sebuah fungsi.
-
Pilih tab Konfigurasi, lalu pilih Izin.
-
Di bawah Nama peran, pilih tautan ke peran eksekusi Anda. Tautan ini membuka peran di konsol IAM.
-
Pilih Tambahkan izin, lalu pilih Lampirkan kebijakan.
-
Di bidang pencarian, masukkan
AWSLambdaDynamoDBExecutionRole
. Tambahkan kebijakan ini ke peran eksekusi Anda. Ini adalah kebijakan AWS terkelola yang berisi izin yang perlu dibaca fungsi Anda dari aliran DynamoDB. Untuk informasi selengkapnya tentang kebijakan ini, lihat DBExecutionPeran AWSLambda Dynamo di Referensi Kebijakan AWS Terkelola. -
Kembali ke fungsi Anda di konsol Lambda. Di bagian Gambaran umum fungsi, pilih Tambah pemicu.
-
Pilih jenis pemicu.
-
Konfigurasikan opsi yang diperlukan, lalu pilih Tambah.
Lambda mendukung opsi berikut untuk sumber acara DynamoDB:
Opsi sumber kejadian
-
Tabel DynamoDB – Tabel DynamoDB tempat untuk membaca catatan.
-
Ukuran batch – Jumlah rekaman yang akan dikirimkan ke fungsi dalam setiap batch, paling banyak 10.000. Lambda meneruskan semua rekaman dalam batch ke fungsi dalam satu panggilan, selama ukuran total kejadian tidak melebihi batas payload untuk invokasi sinkron (6 MB).
Jendela batch – Tentukan jumlah waktu maksimum untuk mengumpulkan rekaman sebelum memanggil fungsi, dalam hitungan detik.
-
Posisi mulai – Hanya memproses rekaman baru, atau semua rekaman yang ada.
-
Terbaru – Memproses rekaman baru yang ditambahkan ke stream.
-
Trim horizon – Memproses semua rekaman dalam aliran.
Setelah memproses rekaman yang sudah ada, fungsi berhenti dan melanjutkan memproses rekaman baru.
-
Tujuan kegagalan — Antrian SQS standar atau topik SNS standar untuk catatan yang tidak dapat diproses. Ketika Lambda membuang sekumpulan catatan yang terlalu tua atau telah kehabisan semua percobaan ulang, Lambda mengirimkan detail tentang batch ke antrian atau topik.
Percobaan ulang – Jumlah maksimum percobaan ulang Lambda saat fungsi memunculkan kesalahan. Hal ini tidak berlaku untuk kesalahan layanan atau pembatasan di mana batch tidak mencapai fungsi.
Maximum age of record – Usia maksimum rekaman yang dikirimkan Lambda ke fungsi Anda.
Split batch on error – Ketika fungsi mengembalikan kesalahan, bagi batch menjadi dua bagian sebelum mencoba kembali. Pengaturan ukuran batch asli Anda tetap tidak berubah.
Batch bersamaan per pecahan — Secara bersamaan memproses beberapa batch dari pecahan yang sama.
-
Diaktifkan – Atur ke true untuk mengaktifkan pemetaan sumber kejadian. Atur ke false untuk menghentikan pemrosesan rekaman. Lambda mencatat rekaman terakhir yang diproses dan melanjutkan pemrosesan dari titik tersebut saat pemetaan diaktifkan kembali.
catatan
Anda tidak dikenakan biaya untuk panggilan GetRecords API yang dipanggil oleh Lambda sebagai bagian dari pemicu DynamoDB.
Untuk mengelola konfigurasi sumber kejadian nanti, pilih pemicu di desainer.