Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan format XHTML di AWS Glue
AWSGlue mengambil data dari sumber dan menulis data ke target yang disimpan dan diangkut dalam berbagai format data. Jika data Anda disimpan atau diangkut dalam format data XHTML, dokumen ini memperkenalkan fitur yang tersedia untuk menggunakan data Anda di Glue. AWS
AWSGlue mendukung menggunakan format XHTML. Format ini mewakili struktur data yang sangat dapat dikonfigurasi dan didefinisikan secara kaku yang tidak berbasis baris atau kolom. XML-nya sangat terstandarisasi. Untuk pengenalan format oleh otoritas standar, lihat XMLEssentials
Anda dapat menggunakan AWS Glue untuk membaca file XHTML dari Amazon S3, bzip
serta gzip
dan arsip yang berisi file XHTML. Anda mengonfigurasi perilaku kompresi pada Parameter koneksi S3 alih-alih dalam konfigurasi yang dibahas di halaman ini.
Tabel berikut menunjukkan fitur AWS Glue umum mana yang mendukung opsi format XHTML.
Baca | Tulis | Streaming dibaca | Kelompokkan file kecil | Bookmark tugas |
---|---|---|---|---|
Didukung | Tidak didukung | Tidak didukung | Didukung | Didukung |
Contoh: Baca XMLdari S3
Pembaca XHTML mengambil nama tag XHTML. Ini memeriksa elemen dengan tag itu dalam inputnya untuk menyimpulkan skema dan mengisi a dengan nilai yang DynamicFrame sesuai. Fungsionalitas AWS Glue XMLberperilaku mirip dengan Sumber Data XMLuntuk
Prasyarat: Anda akan memerlukan jalur S3 (s3path
) ke file atau folder XHTML yang ingin Anda baca, dan beberapa informasi tentang file XMLmu. Anda juga akan memerlukan tag untuk elemen XHTML yang ingin Anda baca,xmlTag
.
Konfigurasi: Dalam opsi fungsi Anda, tentukanformat="xml"
. Dalam Andaconnection_options
, gunakan paths
kunci untuk menentukans3path
. Anda dapat mengonfigurasi lebih lanjut bagaimana pembaca berinteraksi dengan S3 di file. connection_options
Untuk detailnya, lihat Jenis dan opsi koneksi untuk ETL di AWS Glue:Parameter koneksi S3. Dalam Andaformat_options
, gunakan rowTag
kunci untuk menentukanxmlTag
. Anda dapat mengkonfigurasi lebih lanjut bagaimana pembaca menafsirkan file XHTML di file Anda. format_options
Untuk detailnya, lihat Referensi Konfigurasi XHTML.
Berikut skrip AWS Glue ETL menunjukkan proses membaca file XHTML atau folder dari S3.
Referensi konfigurasi XML
Anda dapat menggunakan yang berikut ini di format_options
mana pun pustaka AWS Glue menentukanformat="xml"
:
-
rowTag
- Menentukan tag XMLdalam file untuk memperlakukan sebagai baris. Tag baris tidak dapat berupa penutupan-sendiri.-
Jenis: Teks, Diperlukan
-
-
encoding
- Menentukan pengkodean karakter. Ini bisa berupa nama atau alias Charsetyang didukung oleh lingkungan runtime kami. Kami tidak membuat jaminan khusus seputar dukungan pengkodean, tetapi pengkodean utama harus berfungsi. -
Jenis: Teks, Default:
"UTF-8"
-
-
excludeAttribute
- Menentukan apakah Anda ingin mengecualikan atribut dalam elemen atau tidak.-
Jenis: Boolean, Default:
false
-
-
treatEmptyValuesAsNulls
- Menentukan apakah untuk memperlakukan ruang putih sebagai nilai null.-
Jenis: Boolean, Default:
false
-
-
attributePrefix
— Awalan untuk atribut untuk membedakannya dari teks elemen anak. Prefiks ini digunakan untuk nama bidang.-
Jenis: Teks, Default:
"_"
-
-
valueTag
— Tag yang digunakan untuk nilai ketika ada atribut dalam elemen yang tidak memiliki anak.-
Jenis: Teks, Default:
"_VALUE"
-
-
ignoreSurroundingSpaces
- Menentukan apakah ruang putih yang mengelilingi nilai-nilai harus diabaikan.-
Jenis: Boolean, Default:
false
-
-
withSchema
— Berisi skema yang diharapkan, dalam situasi di mana Anda ingin mengganti skema yang disimpulkan. Jika Anda tidak menggunakan opsi ini, AWS Glue simpulkan skema dari data XHTML.-
Jenis: Teks, Default: Tidak berlaku
-
Nilainya harus berupa objek JSON yang mewakili a
StructType
.
-
Tentukan skema XMLnya secara manual
Contoh skema XHTML manual
Ini adalah contoh penggunaan pilihan format withSchema
untuk menentukan skema untuk data XML.
from awsglue.gluetypes import * schema = StructType([ Field("id", IntegerType()), Field("name", StringType()), Field("nested", StructType([ Field("x", IntegerType()), Field("y", StringType()), Field("z", ChoiceType([IntegerType(), StringType()])) ])) ]) datasource0 = create_dynamic_frame_from_options( connection_type, connection_options={"paths": ["s3://xml_bucket/someprefix"]}, format="xml", format_options={"withSchema": json.dumps(schema.jsonValue())}, transformation_ctx = "" )