

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

# DynamicFrameWriter kelas
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer"></a>



##  metode
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-_methods"></a>
+ [\$1\$1init\$1\$1](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-__init__)
+ [from\$1options](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-from_options)
+ [from\$1catalog](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-from_catalog)
+ [from\$1jdbc\$1conf](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-from_jdbc_conf)

## \$1\$1init\$1\$1
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-__init__"></a>

**`__init__(glue_context)`**
+ `glue_context` — [GlueContext kelas](aws-glue-api-crawler-pyspark-extensions-glue-context.md) yang akan digunakan.

## from\$1options
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-from_options"></a>

**`from_options(frame, connection_type, connection_options={}, format=None, format_options={}, transformation_ctx="")`**

Menulis sebuah `DynamicFrame` menggunakan koneksi dan format yang ditentukan.
+ `frame` — `DynamicFrame` yang akan ditulis.
+ `connection_type` — Jenis koneksi. Nilai yang valid termasuk `s3`, `mysql`, `postgresql`, `redshift`, `sqlserver`, dan `oracle`.
+ `connection_options` — Pilihan koneksi, seperti path dan tabel basis data (opsional). Untuk `connection_type` dari `s3`, 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 `boto3` untuk 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 `dbtable` adalah nama tabel JDBC. Untuk penyimpanan data JDBC yang mendukung skema dalam basis data, tentukan `schema.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](aws-glue-programming-etl-connect.md).
+ `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](aws-glue-programming-etl-format.md) untuk format yang didukung.
+ `format_options` — Pilihan format untuk format yang ditentukan. Lihat [Opsi format data untuk input dan output untuk Spark AWS Glue](aws-glue-programming-etl-format.md) untuk format yang didukung.
+ `transformation_ctx` — Sebuah konteks transformasi yang akan digunakan (opsional).

## from\$1catalog
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-from_catalog"></a>

**`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` — `DynamicFrame` yang akan ditulis.
+ `name_space` — Basis data yang akan digunakan.
+ `table_name` — `table_name` yang 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 ke `true` (default), AWS Glue secara otomatis memanggil `DeleteObjectsOnCancel` API setelah objek ditulis ke Amazon S3. Untuk informasi lebih lanjut, lihat [DeleteObjectsOnCancel](https://docs.aws.amazon.com/lake-formation/latest/dg/aws-lake-formation-api-transactions-api.html#aws-lake-formation-api-transactions-api-DeleteObjectsOnCancel) dalam *Panduan Pengembang AWS Lake Formation *.  
**Example 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\$1jdbc\$1conf
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer-from_jdbc_conf"></a>

**`from_jdbc_conf(frame, catalog_connection, connection_options={}, redshift_tmp_dir = "", transformation_ctx="")`**

Menulis sebuah `DynamicFrame` menggunakan informasi koneksi JDBC yang ditentukan.
+ `frame` — `DynamicFrame` yang 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\$1dynamic\$1frame
<a name="pyspark-WriteDynamicFrame-examples"></a>

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')
```