Muatkan data dari S3 ke dalam Snowflake dan panggil lambda dalam 1 dengan 1 pesanan

王林
Lepaskan: 2024-02-09 11:00:04
ke hadapan
1170 orang telah melayarinya

将数据从 S3 加载到 Snowflake,并按 1 by 1 的顺序调用 lambda

Kandungan soalan

Saya cuba memuatkan data daripada folder baldi S3 ke jadual kepingan salji menggunakan lambda. Saya menyediakan pencetus S3 di mana fail saya diserap dan membentuk penyepaduan antara lambda dan kepingan salji untuk memuatkan fail masuk ke dalam s3 saya ke dalam jadual kepingan salji.

Masalahnya ialah terdapat 1000 fail ditarik ke dalam folder S3 saya dan kesesakan berlaku antara kepingan salji dan lambda saya. Saya sedang mencari cara apabila 1000 fail diserap ke dalam baldi S3 saya, lambda harus memproses satu fail pada satu masa. Selepas memuatkan fail pertama, hanya ia memproses fail seterusnya mengikut urutan. Contohnya: Sama ada terima pengesahan daripada Snowflake atau terima pengesahan padanya.


Jawapan Betul


Anda boleh mengkonfigurasi fungsi AWS Lambda untuk mempunyai Reserved Concurrency - AWS Lambda:

Dengan menetapkan Reserved Concurrency = 1, hanya satu tika fungsi Lambda akan dijalankan pada satu masa. Bergantung pada konfigurasi Snowflake anda, anda boleh memilih untuk meningkatkan ini kepada 2 atau 3 untuk memproses fail dengan lebih pantas tanpa mengeringkan Snowflake.

Anda juga boleh mengkonfigurasi saiz kelompok, iaitu bilangan maksimum acara yang dihantar ke fungsi. Jika S3 menghantar berbilang fail ke contoh Lambda yang sama, kod anda boleh melingkari peristiwa dan memproses berbilang fail pada setiap permohonan.

Saya cuma sedikit bimbang jika anda mencipta banyak objek dan fungsi Lambda dihadkan oleh kiraan serentak 1, panggilan S3 ke Lambda mungkin menyebabkan tamat masa selepas beberapa kali percubaan semula. Jika ya, anda harus:

  • Konfigurasikan S3 untuk menghantar acara ke baris gilir Amazon SQS (bukan terus ke fungsi Lambda), dan
  • Konfigurasikan Lambda untuk tarik mesej daripada baris gilir SQS

Dengan cara ini, mesej akan dibariskan dengan selamat dan bukannya (mungkin) tamat masa kerana fail tertunggak yang besar.

Atas ialah kandungan terperinci Muatkan data dari S3 ke dalam Snowflake dan panggil lambda dalam 1 dengan 1 pesanan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!