Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
UDF Python skalar
Sebuah UDF Python skalar menggabungkan program Python yang berjalan ketika fungsi dipanggil dan mengembalikan nilai tunggal. Per CREATE FUNCTION intah mendefinisikan parameter berikut:
-
(Opsional) Masukan argumen. Setiap argumen harus memiliki nama dan tipe data.
-
Satu tipe data pengembalian.
-
Satu program Python yang dapat dieksekusi.
Jenis data input dan return untuk Python UDF dapat berupa salah satu jenis berikut:
SMALLINT
INTEGER
BIGINT
DECIMAL
REAL
DOUBLE PRECISION
BOOLEAN
CHAR
VARCHAR
DATE
TIMESTAMP
ELEMEN APA PUN
Alias untuk jenis ini juga valid. Untuk daftar lengkap tipe data dan aliasnya, lihatJenis Data.
Ketika Python UDF menggunakan tipe data ANYELEMENT, Amazon Redshift secara otomatis mengonversi ke tipe data standar berdasarkan argumen yang diberikan saat runtime. Untuk informasi selengkapnya, lihat Tipe data ANYELEMENT.
Saat kueri Amazon Redshift memanggil UDF skalar, langkah-langkah berikut terjadi saat runtime:
-
Fungsi mengubah argumen input ke tipe data Python.
Untuk pemetaan tipe data Amazon Redshift ke tipe data Python, lihatJenis data Python UDF.
-
Fungsi menjalankan program Python, melewati argumen input yang dikonversi.
-
Kode Python mengembalikan nilai tunggal. Tipe data dari nilai pengembalian harus sesuai dengan tipe data RETURNS yang ditentukan oleh definisi fungsi.
-
Fungsi mengubah nilai pengembalian Python ke tipe data Amazon Redshift yang ditentukan, lalu mengembalikan nilai tersebut ke kueri.
catatan
Python 3 tidak tersedia untuk Python UDF. Untuk mendapatkan dukungan Python 3 untuk Amazon Redshift UDF, gunakan UDF Lambda Skalar sebagai gantinya.