Anda dapat menggunakan cetak biru pembuat tugas Dataflow untuk menambahkan file Apache Parquet yang ada dari penyimpanan berbasis cloud (Cloud Storage, Amazon S3, atau Azure Blob Storage) ke tabel Apache Iceberg di Lakehouse tanpa batas.
Proses ini menggunakan IcebergAddFiles
transformasi.
Jika file Parquet Anda berada di Cloud Storage, transformasi ini akan mendaftarkan file ke Lakehouse tanpa memindahkan atau menulis ulang data yang mendasarinya. Jika file Anda berada di sistem penyimpanan eksternal seperti Amazon S3, file tersebut akan disalin ke Cloud Storage untuk kueri yang lebih cepat melalui Lakehouse, lalu didaftarkan.
Gunakan detail koneksi berikut untuk menambahkan file Parquet dari penyimpanan berbasis cloud ke tabel Apache Iceberg di Lakehouse.
Sebelum memulai
Aktifkan Dataflow, BigQuery, dan Lakehouse API.
Untuk mendapatkan izin yang diperlukan untuk membuat resource, minta administrator Anda untuk memberi Anda peran Identity and Access Management (IAM) yang diperlukan di project Anda.
Buat katalog, namespace, dan tabel Lakehouse untuk mengimpor data.
Buat bucket penyimpanan berbasis cloud (Cloud Storage, Amazon S3, atau Azure Blob Storage) dan upload file Parquet Anda ke bucket.
Jika bucket penyimpanan berbasis cloud yang Anda gunakan bukan Cloud Storage Google, buat bucket Cloud Storage untuk menyimpan log error tugas Anda.
Dukungan dan batasan
Mengimpor file Parquet di penyimpanan berbasis cloud ke Lakehouse menggunakan Dataflow memiliki batasan berikut:
- Data sumber harus dalam format Apache Parquet dan disimpan di Cloud Storage, Amazon S3, atau Azure Blob Storage.
- Fitur ini hanya mendukung pipeline batch.
Mengimpor file Parquet ke Lakehouse
Gunakan langkah-langkah berikut untuk mengimpor file Parquet dari penyimpanan berbasis cloud ke tabel Iceberg di Lakehouse menggunakan UI pembuat tugas Dataflow.
Di Google Cloud Konsol, buka halaman Lakehouse.
Pilih katalog, namespace, dan tabel yang ingin Anda gunakan untuk mengimpor data.
Di halaman Table details, klik Import table, lalu pilih From Apache Parquet files (Batch).
Halaman Job builder Dataflow akan terbuka.
Di bagian Sources:
Buka entri sumber CreateGlobalInput yang sudah dibuat.
Di bagian editor YAML source configuration, masukkan satu atau beberapa jalur ke file Parquet Anda dalam urutan
elements.Untuk meningkatkan efisiensi impor, tentukan beberapa kumpulan file (glob) saat Anda mendaftarkan sejumlah besar file. Contoh:
reshuffle: true elements: - gs://BUCKET_NAME/restaurant-data/2023/*.parquet - gs://BUCKET_NAME/restaurant-data/2024/*.parquetKlik Done.
Di bagian Transforms:
Klik bagian transformasi IcebergAddFiles untuk membukanya.
Di kolom Iceberg table, masukkan namespace dan nama tabel. Contoh: NAMESPACE .TABLE_NAME .
Di bagian Catalog properties, konfigurasi item berikut:
warehouse: Lokasi Cloud Storage katalog Anda. Contoh,
gs://CATALOG_PATH.header.x-goog-user-project: Project ID Anda: PROJECT_ID. Google Cloud
Klik Done.
Jika Anda melakukan migrasi dari Amazon S3 atau Azure Blob Storage, Anda harus memberikan konfigurasi tambahan untuk menyalin file Parquet ke Cloud Storage. Hal ini tidak diperlukan jika file Anda sudah ada di Cloud Storage.
Klik bagian transformasi CopyFilesToGCS untuk membukanya.
Tetapkan nilai parameter konfigurasi gcs_file_path untuk memberikan bucket Cloud Storage yang sepenuhnya memenuhi syarat untuk menyalin file sementara. Sebaiknya gunakan bucket Cloud Storage yang sama dengan yang digunakan oleh warehouse Lakehouse.
Klik Done.
1 Klik bagian Dataflow Options untuk membukanya.
Jika file Parquet Anda berada di Amazon S3, klik add additional pipeline options untuk memberikan opsi pipeline Apache Beam pipeline options related to S3. Misalnya, s3_region_name, s3_access_key_id, s3_secret_access_key, dan nilai yang sesuai.
Jika file Parquet Anda berada di Azure Blob Storage, klik add additional pipeline options untuk memberikan opsi pipeline Apache Beam pipeline options related to Azure. Misalnya, azure_connection_string, blob_service_endpoint, azure_managed_identity_client_id, dan nilai yang sesuai.
Di bagian Sinks:
Klik sink Write results untuk membukanya.
Di kolom JSON location, tentukan lokasi Cloud Storage dan nama file untuk menulis hasil error. Contoh:
gs://BUCKET_NAME/errors/errors.jsonKlik Done.
Di bagian Dataflow Options, klik Run job.
Jika perlu menyesuaikan lebih lanjut pipeline Dataflow yang digunakan untuk mendaftarkan file Parquet, Anda dapat melakukannya menggunakan formulir pembuat tugas atau editor YAML.
Memeriksa output tugas
Setelah tugas selesai, Anda dapat memverifikasi bahwa data telah didaftarkan ke tabel Iceberg dengan membuat kueri di BigQuery.
Di daftar tugas Dataflow, pastikan status tugas adalah Succeeded.
Jika tugas gagal atau memiliki error, periksa file log error JSON di Cloud Storage untuk mengetahui detailnya.
Di Google Cloud Konsol, buka halaman BigQuery Studio.
Di editor kueri, masukkan kueri SQL untuk memeriksa tabel. Anda dapat menggunakan
PROJECT_ID.CATALOG>NAMESPACE.TABLE_NAMEkonvensi untuk membuat kueri.SELECT * FROM `PROJECT_ID.CATALOG>NAMESPACE.TABLE_NAME` LIMIT 10Klik Run.
Tinjau Query results untuk memastikan data diproses dengan benar.
Langkah berikutnya
- Pelajari lebih lanjut di Tentang katalog runtime Lakehouse.
- Pelajari lebih lanjut di Ringkasan UI Pembuat Tugas Dataflow.