Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
DynamicFrameWriter kelas
metode
__init__
__init__(glue_context)
glue_context— GlueContext kelas yang akan digunakan.
from_options
from_options(frame, connection_type, connection_options={},
format=None, format_options={}, transformation_ctx="")
Menulis sebuah DynamicFrame menggunakan koneksi dan format yang ditentukan.
frame—DynamicFrameyang akan ditulis.connection_type— Jenis koneksi. Nilai yang valid termasuks3,mysql,postgresql,redshift,sqlserver, danoracle.connection_options— Pilihan koneksi, seperti path dan tabel basis data (opsional). Untukconnection_typedaris3, path Amazon S3 didefinisikan.connection_options = {"path": "s3://aws-glue-target/temp"}Untuk koneksi JDBC, beberapa properti harus didefinisikan. Perhatikan bahwa nama basis data harus menjadi bagian dari URL. Secara opsional dapat disertakan dalam opsi koneksi.
Awas
Menyimpan kata sandi dalam skrip Anda tidak disarankan. Pertimbangkan
boto3untuk menggunakan untuk mengambilnya dari AWS Secrets Manager atau Katalog Data AWS Glue.connection_options = {"url": "jdbc-url/database", "user": "username", "password":passwordVariable,"dbtable": "table-name", "redshiftTmpDir": "s3-tempdir-path"}Properti
dbtableadalah nama tabel JDBC. Untuk penyimpanan data JDBC yang mendukung skema dalam basis data, tentukanschema.table-name. Jika skema tidak disediakan, maka skema "publik" default digunakan.Untuk informasi selengkapnya, lihat Jenis dan opsi koneksi untuk ETL di AWS Glue untuk Spark.
format— Format spesifikasi (opsional). Ini digunakan untuk Amazon Simple Storage Service (Amazon S3) atau koneksi AWS Glue yang mendukung berbagai format. Lihat Opsi format data untuk input dan output untuk Spark AWS Glue untuk format yang didukung.format_options— Pilihan format untuk format yang ditentukan. Lihat Opsi format data untuk input dan output untuk Spark AWS Glue untuk format yang didukung.transformation_ctx— Sebuah konteks transformasi yang akan digunakan (opsional).
from_catalog
from_catalog(frame, name_space, table_name, redshift_tmp_dir="", transformation_ctx="")
Menulis sebuah DynamicFrame menggunakan basis data katalog dan nama tabel yang ditentukan.
frame—DynamicFrameyang akan ditulis.name_space— Basis data yang akan digunakan.table_name—table_nameyang akan digunakan.redshift_tmp_dir— Sebuah direktori sementara Amazon Redshift yang akan digunakan (opsional).transformation_ctx— Sebuah konteks transformasi yang akan digunakan (opsional).-
additional_options— Opsi tambahan yang disediakan untukAWS Glue.Untuk menulis ke tabel yang Lake Formation diatur, Anda dapat menggunakan opsi tambahan ini:
-
transactionId— (String) ID transaksi di mana untuk melakukan penulisan ke tabel yang Diatur. Transaksi ini tidak dapat dilakukan atau dibatalkan, atau penulisan akan gagal. -
callDeleteObjectsOnCancel— (Boolean, opsional) Jika diatur ketrue(default), AWS Glue secara otomatis memanggilDeleteObjectsOnCancelAPI setelah objek ditulis ke Amazon S3. Untuk informasi lebih lanjut, lihat DeleteObjectsOnCancel dalam Panduan Pengembang AWS Lake Formation .
contoh Contoh: Menulis ke tabel yang diatur di Lake Formation
txId = glueContext.start_transaction(read_only=False) glueContext.write_dynamic_frame.from_catalog( frame=dyf, database = db, table_name = tbl, transformation_ctx = "datasource0", additional_options={"transactionId":txId}) ... glueContext.commit_transaction(txId) -
from_jdbc_conf
from_jdbc_conf(frame, catalog_connection, connection_options={}, redshift_tmp_dir = "", transformation_ctx="")
Menulis sebuah DynamicFrame menggunakan informasi koneksi JDBC yang ditentukan.
frame—DynamicFrameyang akan ditulis.catalog_connection— Koneksi katalog yang akan digunakan.connection_options— Pilihan koneksi, seperti path dan tabel basis data (opsional).redshift_tmp_dir— Sebuah direktori sementara Amazon Redshift yang akan digunakan (opsional).transformation_ctx— Sebuah konteks transformasi yang akan digunakan (opsional).
Example for write_dynamic_frame
Contoh ini menulis output secara lokal menggunakan connection_type dari S3 dengan argumen path POSIX di connection_options, yang memungkinkan penulisan ke penyimpanan lokal.
glueContext.write_dynamic_frame.from_options(\ frame = dyf_splitFields,\ connection_options = {'path': '/home/glue/GlueLocalOutput/'},\ connection_type = 's3',\ format = 'json')