Layanan bisnis sering menghasilkan file data, seperti formulir standar dan log, yang secara berkala diunggah ke Object Storage Service (OSS). Namun, data ini umumnya tidak dikelola dengan metadata, sehingga sulit diproses dan dianalisis. Fitur penemuan metadata AnalyticDB for MySQL mendukung pemetaan path OSS otomatis, pengelompokan file cerdas, penemuan field dinamis, serta deteksi perubahan untuk secara otomatis membuat dan memperbarui metadata data lake. Anda dapat membuat pekerjaan penemuan metadata OSS guna menemukan dan mengimpor data secara otomatis dari file dan bucket OSS yang berada di wilayah yang sama dengan kluster AnalyticDB for MySQL Anda.
Prasyarat
Kluster AnalyticDB for MySQL Edisi Perusahaan, Edisi Dasar, atau Edisi Data Lakehouse telah dibuat.
Akun database telah dibuat untuk kluster AnalyticDB for MySQL.
Jika Anda menggunakan Akun Alibaba Cloud, cukup membuat akun istimewa.
Jika Anda menggunakan pengguna Resource Access Management (RAM), Anda harus membuat akun istimewa dan akun standar, lalu mengaitkan akun standar tersebut dengan pengguna RAM.
Bucket Object Storage Service (OSS) telah dibuat di wilayah yang sama dengan kluster AnalyticDB for MySQL.
-
Anda telah mengunggah file ke bucket OSS, dan path OSS memenuhi persyaratan berikut:
-
Path OSS harus dalam format
<BucketName>/directory/.../directory/table/fileatau<BucketName>/directory/.../directory/table/partition/.../partition/file. -
Bucket harus berisi setidaknya satu level subdirektori.
-
File dalam tabel atau partisi yang sama harus memiliki tipe file yang sama.
-
File dalam tabel atau partisi yang sama harus memiliki tipe field dan jumlah field yang sama.
-
Batasan
Anda hanya dapat membuat satu pekerjaan penemuan metadata untuk path OSS yang sama dalam satu kluster.
Prosedur
Masuk ke Konsol AnalyticDB for MySQL. Di pojok kiri atas konsol, pilih wilayah. Di panel navigasi sebelah kiri, klik Clusters. Temukan kluster yang ingin Anda kelola, lalu klik ID kluster tersebut.
-
Di panel navigasi sebelah kiri, pilih .
-
Pada halaman Metadata Discovery, di bagian sumber data OSS, klik Start Wizard.
CatatanJika tombol Start Wizard berwarna pudar, Anda harus terlebih dahulu membuat akun istimewa.
-
Pada tab OSS Data Source, konfigurasikan parameter sesuai tabel berikut.
Parameter
Parameter
Deskripsi
Data Source Configuration
Data Warehouse Mode
Menyediakan penemuan metadata otomatis untuk membangun gudang data standar di OSS. Mode ini memberikan akurasi deteksi tinggi.
CatatanMode gratis tidak didukung.
OSS Directory
-
Common files: Path penyimpanan file di OSS. Path harus diakhiri dengan garis miring maju (
/).Memilih OSS Directory yang berbeda menghasilkan pemetaan yang berbeda.
PentingSaat menentukan OSS Directory, pastikan setidaknya ada satu subdirektori setelah OSS Directory. Anda tidak dapat menentukan direktori induk dari sebuah file.
-
Data lake table: Direktori induk dari path penyimpanan tabel di OSS. Path harus diakhiri dengan
/. Misalnya, jika direktori tabel Iceberg adalahoss://adb/testdb/iceberg_table/, lokasi direktori OSS-nya adalahoss://adb/testdb/.
Path Filter Rules (Optional)
Tentukan path penyimpanan file yang ingin Anda petakan ke AnalyticDB for MySQL.
-
Include: Semua file di path penyimpanan yang ditentukan akan dipetakan ke AnalyticDB for MySQL.
PentingJika path penyimpanan berisi beberapa file, file-file tersebut harus memiliki tipe file, jumlah kolom, dan tipe kolom yang sama agar dapat dipetakan.
-
Exclude: Semua file di path penyimpanan yang ditentukan tidak akan dipetakan ke AnalyticDB for MySQL.
Format Parser
Pilih resolver format berdasarkan format file. Untuk format file umum, resolver format juga mendukung penguraian otomatis dengan memanggil resolver untuk format file umum secara berurutan untuk mengurai file.
PentingJika tipe resolver format yang dipilih tidak sesuai dengan format file, pemetaan gagal.
Tipe resolver yang didukung:
-
Common Files:
csv,json,parquet,avro,orc, danautomatic. -
Data Lake Tables:
iceberg.CatatanFitur tabel data lake sedang dalam pratinjau publik. Untuk menggunakan fitur ini, Submit a ticket.
Configuration Options (Optional)
Pengaturan kustom lanjutan. Saat resolver format diatur ke CSV, Anda dapat mengonfigurasi parameter berikut:
-
Field separator: Menentukan pemisah kolom untuk file data CSV.
-
Reference Identifier: Menentukan pengenal referensi untuk tabel AnalyticDB for MySQL setelah penguraian.
-
Header Mode: Mengidentifikasi header CSV untuk menentukan nama kolom tabel.
-
Allow single column: Menentukan apakah baris dalam file data CSV boleh hanya berisi satu kolom.
-
false: Tidak diizinkan.
-
true: Diizinkan.
-
-
Untuk konfigurasi lainnya, seperti menggunakan baris pertama file CSV sebagai nama kolom, hubungi dukungan teknis.
Properties
Scheduling Frequency
Untuk secara berkala menangkap perubahan pada file data, atur frekuensi penjadwalan agar pekerjaan dijalankan secara berulang.
Saat data dalam file OSS berubah, data dalam tabel yang dipetakan ke AnalyticDB for MySQL diperbarui berdasarkan aturan dalam Destination Metadata Settings.
Destination Metadata Settings
Schema Name
Tentukan nama skema, yang dipetakan ke nama database di AnalyticDB for MySQL. Secara default, skema baru dibuat untuk setiap pekerjaan penemuan.
Saat menentukan nama database, perhatikan hal berikut:
-
Nama skema tidak boleh sama dengan nama database yang sudah ada di AnalyticDB for MySQL.
-
Tidak boleh sama dengan nama database yang digunakan oleh pekerjaan penemuan metadata lainnya.
Configuration Options (Optional)
Tentukan cara memperbarui tabel yang dipetakan ke AnalyticDB for MySQL saat field file OSS berubah atau file tersebut dihapus.
-
Object Field Change Rules:
-
Add Only Columns: Saat kolom ditambahkan ke file OSS, kolom tersebut akan ditambahkan ke tabel yang dipetakan ke AnalyticDB for MySQL pada jalannya pekerjaan penemuan metadata berikutnya.
-
Ignore Table Updates: Saat kolom atau partisi file OSS berubah, jalannya pekerjaan penemuan metadata berikutnya hanya menyinkronkan partisi ke tabel yang dipetakan ke AnalyticDB for MySQL. Kolom tidak ditambahkan atau dihapus.
-
-
Object Delete Change Rules: Hanya Ignore Delete Updates yang didukung. Jika file OSS dihapus, tabel yang dipetakan ke AnalyticDB for MySQL tetap ada setelah pekerjaan penemuan metadata berikutnya dijalankan.
PentingAnda dapat melakukan operasi DDL dan DML pada tabel yang dipetakan ke AnalyticDB for MySQL.
-
Jika Anda menambahkan kolom ke tabel AnalyticDB for MySQL, kolom tersebut tidak ditimpa dan tetap ada setelah pekerjaan penemuan metadata berikutnya dijalankan.
-
Jika Anda menghapus kolom dari tabel yang dipetakan ke AnalyticDB for MySQL, kolom yang dihapus akan dipetakan ulang ke AnalyticDB for MySQL setelah pekerjaan penemuan metadata berikutnya dijalankan.
-
-
-
Setelah mengonfigurasi parameter, klik Create untuk membuat pekerjaan penemuan metadata.
CatatanSetelah pekerjaan penemuan metadata dibuat, pekerjaan tersebut akan dijalankan secara otomatis sesuai jadwal yang ditentukan. Jika Anda ingin segera menyinkronkan data, temukan pekerjaan tersebut dalam daftar pekerjaan, lalu klik Execute di kolom Actions.
-
Setelah pekerjaan dimulai, Anda dapat mengelolanya di halaman Tasks, tempat Anda dapat melihat status pekerjaan, mengubah konfigurasi, dan lainnya.
CatatanSetelah pekerjaan berhasil dijalankan, buka halaman untuk melihat database, tabel, dan partisi yang dipetakan ke AnalyticDB for MySQL.
Pemetaan path OSS ke AnalyticDB for MySQL
Hasil pemetaan path OSS ke AnalyticDB for MySQL bergantung pada dua faktor:
-
File OSS dan struktur path-nya.
-
OSS Directory yang dipilih dalam pekerjaan penemuan metadata.
Sistem secara otomatis memetakan nama direktori ke nama tabel dan partisi berdasarkan OSS Directory yang Anda pilih. Nama direktori tingkat pertama di bawah OSS Directory dipetakan ke nama tabel, sedangkan nama direktori dari tingkat kedua hingga terakhir di bawah OSS Directory dipetakan ke partisi. Berikut contohnya.
|
Jalur OSS |
Lokasi direktori OSS |
Pemetaan ke tabel AnalyticDB for MySQL |
|
oss://adb/Table1/file1.csv oss://adb/Table1/file2.json |
oss://adb/ |
Tabel tidak dapat dipetakan. Alasan: File memiliki tipe yang tidak konsisten (CSV dan JSON) sehingga tidak dapat dipetakan ke satu tabel. Penting
Pemetaan juga gagal jika file dengan tipe yang sama memiliki tipe data field yang tidak konsisten. |
|
oss://adb/Table2/year/month/day/file3.json oss://adb/Table2/year/month/day/file4.json |
oss://adb/ |
Tabel yang dipetakan di AnalyticDB for MySQL adalah tabel partisi bernama Catatan
Karena kunci partisi tidak ditentukan, placeholder bernomor seperti partition_0 digunakan sebagai pengganti. |
|
oss://adb/Table2/ |
Tabel yang dipetakan di AnalyticDB for MySQL adalah tabel partisi bernama |
|
|
oss://adb/Table2/year/month/ |
Tabel yang dipetakan di AnalyticDB for MySQL adalah tabel non-partisi bernama |
|
|
oss://adb/Table2/year/month/day/ |
Tabel tidak dapat dipetakan. Alasan: Tidak ada subdirektori setelah OSS Directory yang dipilih. |
|
|
oss://adb/Table3/year=2022/month=03/day=01/file5.csv oss://adb/Table3/year=2022/month=03/day=01/file6.csv |
oss://adb/ |
Tabel yang dipetakan di AnalyticDB for MySQL adalah tabel partisi bernama |
|
Tabel tidak dapat dipetakan. Alasan: Nama direktori |
|
|
oss://adb/Table4/2020/03/30/file7.csv oss://adb/Table3/2020/03/30/file8.csv |
oss://adb/ |
Tabel yang dipetakan di AnalyticDB for MySQL adalah tabel partisi bernama Catatan
Karena kunci partisi tidak ditentukan, placeholder bernomor seperti partition_0 digunakan sebagai pengganti. |
|
Tabel tidak dapat dipetakan. Alasan: Nama direktori |