Template Dekompresi File Cloud Storage Massal

Template Bulk Decompress Cloud Storage Files adalah pipeline batch yang mendekompresi file di Cloud Storage ke lokasi tertentu. Fungsi ini berguna saat Anda ingin menggunakan data terkompresi untuk meminimalkan biaya bandwidth jaringan selama migrasi, tetapi ingin memaksimalkan kecepatan pemrosesan analisis dengan beroperasi pada data yang tidak dikompresi setelah migrasi. Pipeline secara otomatis menangani beberapa mode kompresi selama satu proses dan menentukan mode dekompresi yang akan digunakan berdasarkan ekstensi file (.bzip2, .deflate, .gz, .zip).

Persyaratan pipeline

  • File yang akan didekompresi harus dalam salah satu format berikut: Bzip2, Deflate, Gzip, Zip.
  • Direktori output harus ada sebelum menjalankan pipeline.

Parameter template

Parameter Deskripsi
inputFilePattern Pola file input yang akan dibaca. Misalnya, gs://bucket-name/compressed/*.gz.
outputDirectory Lokasi output yang menjadi tujuan penulisan. Misalnya, gs://bucket-name/decompressed.
outputFailureFile File output log error yang akan digunakan untuk kegagalan tulis yang terjadi selama proses dekompresi. Misalnya, gs://bucket-name/decompressed/failed.csv. Jika tidak ada kegagalan, file akan tetap dibuat tetapi akan kosong. Konten file menggunakan format CSV (Nama File, Error) dan terdiri dari satu baris untuk setiap file yang gagal dalam dekompresi.

Menjalankan template

Konsol

  1. Buka halaman Create job from template Dataflow.
  2. Buka Buat tugas dari template
  3. Di kolom Job name, masukkan nama pekerjaan yang unik.
  4. Opsional: Untuk Endpoint regional, pilih nilai dari menu drop-down. Region default-nya adalah us-central1.

    Untuk daftar region tempat Anda dapat menjalankan tugas Dataflow, lihat Lokasi Dataflow.

  5. Dari menu drop-down Dataflow template, pilih the Bulk Decompress Files on Cloud Storage template.
  6. Di kolom parameter yang disediakan, masukkan parameter value Anda.
  7. Klik Run job.

gcloud

Di shell atau terminal Anda, jalankan template:

gcloud dataflow jobs run JOB_NAME \
    --gcs-location gs://dataflow-templates-REGION_NAME/VERSION/Bulk_Decompress_GCS_Files \
    --region REGION_NAME \
    --parameters \
inputFilePattern=gs://BUCKET_NAME/compressed/*.gz,\
outputDirectory=gs://BUCKET_NAME/decompressed,\
outputFailureFile=OUTPUT_FAILURE_FILE_PATH

Ganti kode berikut:

  • JOB_NAME: nama pekerjaan unik pilihan Anda
  • REGION_NAME: region tempat Anda ingin men-deploy tugas Dataflow, misalnya us-central1
  • VERSION: versi template yang ingin Anda gunakan

    Anda dapat menggunakan nilai berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda
  • OUTPUT_FAILURE_FILE_PATH: pilihan jalur Anda ke file yang berisi informasi kegagalan

API

Untuk menjalankan template menggunakan REST API, kirim permintaan HTTP POST. Untuk informasi selengkapnya tentang API dan cakupan otorisasinya, lihat projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/Bulk_Decompress_GCS_Files
{
   "jobName": "JOB_NAME",
   "parameters": {
       "inputFilePattern": "gs://BUCKET_NAME/compressed/*.gz",
       "outputDirectory": "gs://BUCKET_NAME/decompressed",
       "outputFailureFile": "OUTPUT_FAILURE_FILE_PATH"
   },
   "environment": { "zone": "us-central1-f" }
}

Ganti kode berikut:

  • PROJECT_ID: ID project Google Cloud tempat Anda ingin menjalankan tugas Dataflow
  • JOB_NAME: nama pekerjaan unik pilihan Anda
  • LOCATION: region tempat Anda ingin men-deploy tugas Dataflow, misalnya us-central1
  • VERSION: versi template yang ingin Anda gunakan

    Anda dapat menggunakan nilai berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda
  • OUTPUT_FAILURE_FILE_PATH: pilihan jalur Anda ke file yang berisi informasi kegagalan

Langkah selanjutnya