Penyimpanan data mana yang dapat saya jelajahi? - AWS Glue

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

Penyimpanan data mana yang dapat saya jelajahi?

Crawler dapat melakukan perayapan pada penyimpanan data berbasis file dan berbasis tabel berikut.

Jenis akses yang digunakan oleh crawler Penyimpanan data
Klien asli
  • Amazon Simple Storage Service (Amazon S3)

  • Amazon DynamoDB

  • Danau Delta 2.0.x

  • Gunung Es Apache 1.5

  • Apache Hudi 0,14

JDBC

Amazon Redshift

Kepingan salju

Dalam Amazon Relational Database Service (Amazon RDS) atau eksternal ke Amazon RDS:

  • Amazon Aurora

  • MariaDB

  • Microsoft SQL Server

  • MySQL

  • Oracle

  • PostgreSQL

Klien MongoDB
  • MongoDB

  • MongoDB Atlas

  • Amazon DocumentDB (dengan kompatibilitas MongoDB)

catatan

Saat ini AWS Glue tidak mendukung crawler untuk aliran data.

Untuk penyimpanan data JDBC, MongoDB, MongoDB Atlas, dan Amazon DocumentDB (dengan kompatibilitas MongoDB), Anda harus menentukan koneksi yang dapat digunakan crawler untuk terhubung ke penyimpanan data. AWS Glue Untuk Amazon S3, Anda dapat menentukan sebuah koneksi tipe Jaringan. Sebuah koneksi adalah objek Katalog Data yang menyimpan informasi koneksi, seperti kredensial, URL, informasi Amazon Virtual Private Cloud, dan banyak lagi. Untuk informasi selengkapnya, lihat Menghubungkan ke data.

Berikut ini adalah versi driver yang didukung oleh crawler:

Produk Driver yang didukung crawler
PostgreSQL 42.2.1
Amazon Aurora Sama seperti driver crawler asli
MariaDB 8.0.13
Microsoft SQL Server 6.1.0
MySQL 8.0.13
Oracle 11.2.2
Amazon Redshift 4.1
Kepingan salju 3.13.20
MongoDB 4.7.2
MongoDB Atlas 4.7.2

Berikut ini adalah catatan tentang berbagai penyimpanan data.

Amazon S3

Anda dapat memilih untuk melakukan perayapan pada sebuah path di akun Anda atau di akun lain. Jika semua file Amazon S3 dalam folder memiliki skema yang sama, maka crawler menciptakan sebuah tabel. Selain itu, jika objek Amazon S3 dipartisi, maka hanya akan ada satu tabel metadata yang dibuat dan informasi partisi ditambahkan ke Katalog Data untuk tabel tersebut.

Amazon S3 dan Amazon DynamoDB

Crawler menggunakan peran AWS Identity and Access Management (IAM) untuk izin mengakses penyimpanan data Anda. Peran yang Anda berikan ke crawler harus memiliki izin untuk mengakses path Amazon S3 dan tabel Amazon DynamoDB yang di-crawl.

Amazon DynamoDB

Saat menentukan crawler menggunakan konsol AWS Glue, Anda menentukan satu tabel DynamoDB. Jika Anda menggunakan API AWS Glue, Anda dapat menentukan sebuah daftar tabel. Anda dapat memilih untuk melakukan perayapan hanya pada sampel kecil data untuk mengurangi waktu aktif crawler.

Danau Delta

Untuk setiap penyimpanan data Delta Lake, Anda menentukan cara membuat tabel Delta:

  • Buat tabel Native: Izinkan integrasi dengan mesin kueri yang mendukung kueri log transaksi Delta secara langsung. Untuk informasi lebih lanjut, lihat Menanyakan tabel Danau Delta.

  • Buat tabel Symlink: Buat _symlink_manifest folder dengan file manifes yang dipartisi oleh tombol partisi, berdasarkan parameter konfigurasi yang ditentukan.

Gunung es

Untuk setiap penyimpanan data Iceberg, Anda menentukan jalur Amazon S3 yang berisi metadata untuk tabel Iceberg Anda. Jika crawler menemukan metadata tabel Iceberg, ia mendaftarkannya di Katalog Data. Anda dapat mengatur jadwal untuk crawler untuk menjaga tabel diperbarui.

Anda dapat menentukan parameter ini untuk penyimpanan data:

  • Pengecualian: Memungkinkan Anda melewati folder tertentu.

  • Kedalaman Traversal Maksimum: Menetapkan batas kedalaman yang dapat dirayapi crawler di bucket Amazon S3 Anda. Kedalaman traversal maksimum default adalah 10 dan kedalaman maksimum yang dapat Anda atur adalah 20.

Hudi

Untuk setiap penyimpanan data Hudi, Anda menentukan jalur Amazon S3 yang berisi metadata untuk tabel Hudi Anda. Jika crawler menemukan metadata tabel Hudi, ia mendaftarkannya di Katalog Data. Anda dapat mengatur jadwal untuk crawler untuk menjaga tabel diperbarui.

Anda dapat menentukan parameter ini untuk penyimpanan data:

  • Pengecualian: Memungkinkan Anda melewati folder tertentu.

  • Kedalaman Traversal Maksimum: Menetapkan batas kedalaman yang dapat dirayapi crawler di bucket Amazon S3 Anda. Kedalaman traversal maksimum default adalah 10 dan kedalaman maksimum yang dapat Anda atur adalah 20.

catatan

Kolom stempel waktu dengan millis tipe logis akan ditafsirkan sebagaibigint, karena ketidakcocokan dengan Hudi 0.13.1 dan tipe stempel waktu. Resolusi dapat diberikan dalam rilis Hudi mendatang.

Tabel Hudi dikategorikan sebagai berikut, dengan implikasi spesifik untuk masing-masing:

  • Copy on Write (CoW): Data disimpan dalam format kolom (Parket), dan setiap pembaruan membuat versi file baru selama penulisan.

  • Merge on Read (MoR): Data disimpan menggunakan kombinasi format kolumnar (Parket) dan berbasis baris (Avro). Pembaruan dicatat ke file delta berbasis baris dan dipadatkan sesuai kebutuhan untuk membuat file kolumnar versi baru.

Dengan set data CoW, setiap kali ada pembaruan ke catatan, file yang berisi catatan ditulis ulang dengan nilai yang diperbarui. Dengan set data MoR, setiap kali ada pembaruan, Hudi hanya menulis baris untuk catatan yang berubah. MoR lebih cocok untuk beban kerja tulis atau perubahan berat dengan lebih sedikit pembacaan. CoW lebih cocok untuk beban kerja pembacaan berat pada data yang jarang berubah.

Hudi menyediakan tiga tipe kueri untuk mengakses data:

  • Kueri snapshot: Kueri yang melihat snapshot terbaru dari tabel sebagai tindakan komit atau pemadatan yang diberikan. Untuk tabel MoR, kueri snapshot memapar status terbaru tabel dengan menggabungkan file dasar dan delta potongan file terbaru pada pada saat kueri.

  • Kueri tambahan: Kueri hanya melihat data baru yang ditulis ke tabel, karena komit/pemadatan yang diberikan. Ini secara efektif menyediakan pengaliran perubahan untuk mengaktifkan data pipeline tambahan.

  • Baca kueri yang dioptimalkan: Untuk tabel MoR, kueri melihat data terbaru yang dipadatkan. Untuk tabel CoW, kueri melihat data terbaru yang dikomit.

Untuk tabel Copy-On-Write, crawler membuat satu tabel di Katalog Data dengan serde. ReadOptimized org.apache.hudi.hadoop.HoodieParquetInputFormat

Untuk tabel Merge-On-Read, crawler membuat dua tabel di Katalog Data untuk lokasi tabel yang sama:

  • Sebuah tabel dengan akhiran _ro yang menggunakan ReadOptimized org.apache.hudi.hadoop.HoodieParquetInputFormat serde.

  • Tabel dengan akhiran _rt yang menggunakan RealTime Serde yang memungkinkan kueri Snapshot:. org.apache.hudi.hadoop.realtime.HoodieParquetRealtimeInputFormat

MongoDB dan Amazon DocumentDB (dengan kompatibilitas MongoDB)

Mendukung MongoDB versi 3.2 dan versi setelahnya. Anda dapat memilih untuk melakukan perayapan hanya pada sampel kecil data untuk mengurangi waktu aktif crawler.

Basis data relasional

Autentikasi dengan nama pengguna dan kata sandi basis data. Tergantung pada jenis mesin basis data, Anda dapat memilih objek yang di-crawl, seperti basis data, skema, dan tabel.

Kepingan salju

Crawler Snowflake JDBC mendukung crawling Table, External Table, View, dan Materialized View. Definisi Tampilan Terwujud tidak akan diisi.

Untuk tabel eksternal Snowflake, crawler hanya akan merangkak jika menunjuk ke lokasi Amazon S3. Selain skema tabel, crawler juga akan merayapi lokasi Amazon S3, format file, dan output sebagai parameter tabel di tabel Katalog Data. Perhatikan bahwa informasi partisi dari tabel eksternal yang dipartisi tidak diisi.

ETL saat ini tidak didukung untuk tabel Katalog Data yang dibuat menggunakan crawler Snowflake.