Menyerap data dalam batch
Meskipun cara utama untuk menyerap data ke Manufacturing Data Engine (MDE) adalah menggunakan streaming melalui Manufacturing Connect edge (MCe) atau mengirim pesan ke Pub/Sub, Anda juga dapat menyerap file dalam batch. Hal ini dapat berguna untuk memproses ulang data atau mengimpor data dari sistem eksternal.
Pemuatan batch berfungsi dengan membuat IngestionSpecification menggunakan antarmuka web atau API, lalu mengupload satu atau beberapa file ke folder di bucket Cloud Storage yang disiapkan oleh MDE, yang secara default memiliki nama <project-id>-batch-ingestion. Saat file baru diupload ke bucket ini, file tersebut akan terdeteksi oleh tugas Dataflow Cloud Storage Reader. Tugas ini akan membagi file menjadi setiap pesan individual dan mengirimkannya ke topik Pub/Sub input-messages.
Format yang didukung
Pemuatan batch mendukung format data berikut:
- JSON: Dibatasi baris baru. Setiap baris akan dikirim sebagai pesan baru.
- CSV: Dengan atau tanpa header (dapat ditentukan), mendukung baris yang dilewati dan pemisah yang berbeda. Pesan dikonversi ke JSON menggunakan setiap kolom header sebagai kunci dan kolom baris yang sesuai sebagai nilai.
- AVRO: Memetakan setiap baris dari AVRO ke JSON.
- AVRO_RAW_WRITER: Membaca pesan yang belum diproses yang ditulis oleh Cloud Storage Writer dan menulis kembali setiap pesan dengan mempertahankan ID pesan Pub/Sub.
Konfigurasi
Agar Cloud Storage Reader dapat memproses file, Cloud Storage Reader memerlukan File Ingestion Specification yang menentukan jenis file yang diharapkan, opsi, dan folder tempat file akan diupload.
Semua format memerlukan parameter berikut:
- name: Nama untuk
File Ingestion Specification. - folderName: Folder tempat file untuk
File Ingestion Specificationakan diupload. - source: Format yang akan digunakan (
JSON/CSV/AVRO/AVRO_RAW_WRITER).
Selain itu, sumber CSV mendukung hal berikut:
- separator: Pemisah yang akan digunakan (
,digunakan jika tidak ada yang diberikan). - skip_rows: Apakah akan melewati baris sebelum mulai membaca file CSV.
- headers:
- infer_headers: Apakah header harus disimpulkan oleh baris pertama yang dibaca.
- headerNames: Berikan daftar nama header yang diurutkan untuk digunakan.
- insert_metadata: Apakah akan menyertakan metadata terkait file yang
diserap (
filePath,fileName,ingestionName). Metadata ini ditambahkan sebagai key-value pair tambahan ke pesan yang dikirim.
Contoh konfigurasi
Bagian ini berisi beberapa contoh konfigurasi untuk pemuatan batch.
Menyerap file yang dibatasi JSON baris baru
REST
POST configuration/v1/ingestions
{
"name": "json-simple",
"source": "JSON",
"folderName": "jsonFiles"
}
Konsol
- Akses konfigurasi File Ingestion Specification.
Buka bagian FILE INGESTION di menu Atas bagian 'Cloud Management'.

File Ingestion Specifications yang ada tercantum di bagian FILE INGESTION . File tersebut dapat di ubah, diaktifkan, dinonaktifkan, atau dihapus menggunakan ikon 'Actions' di samping setiap spesifikasi penyerapan.

Untuk membuat File Ingestion Specification baru, klik 'ADD NEW INGESTION SPECIFICATION'. Menu samping baru akan ditampilkan di sebelah kanan layar yang berisi semua parameter yang diperlukan untuk menentukan File Ingestion Specification baru:

Untuk membuat spesifikasi penyerapan file yang dibatasi JSON baris baru pilih JSON dari menu 'Source Type' dan berikan dua parameter yang diperlukan, dalam contoh ini:
- name: Nama untuk File Ingestion Specification.
- folderName: Folder tempat file untuk File Ingestion Specification akan diupload.

Setelah parameter selesai, klik 'CREATE'. Jika spesifikasi penyerapan file baru berhasil dibuat, pesan konfirmasi akan muncul.
Menyerap file AVRO
REST
POST configuration/v1/ingestions
{
"name": "avro-simple",
"source": "AVRO",
"folderName": "avroFiles"
}
Konsol
- Akses konfigurasi File Ingestion Specification.
Buka bagian FILE INGESTION di menu Atas bagian 'Cloud Management'.

File Ingestion Specifications yang ada tercantum di bagian FILE INGESTION . File tersebut dapat di ubah, diaktifkan, dinonaktifkan, atau dihapus menggunakan ikon 'Actions' di samping setiap spesifikasi penyerapan.

Untuk membuat File Ingestion Specification baru, klik ADD NEW INGESTION SPECIFICATION.
Menu samping baru akan ditampilkan di sebelah kanan layar yang berisi semua parameter yang diperlukan untuk menentukan File Ingestion Specification baru:

Untuk membuat spesifikasi penyerapan File AVRO baru, pilih AVRO dari menu 'Source Type'.
Berikan dua parameter yang diperlukan, dalam contoh ini:
- name: Nama untuk File Ingestion Specification.
- folderName: Folder tempat file untuk File Ingestion Specification akan diupload.

Setelah parameter selesai, klik 'CREATE'. Jika spesifikasi penyerapan file baru berhasil dibuat, pesan konfirmasi akan muncul.
Menyerap file CSV yang menyimpulkan nama kolom dari header
REST
POST configuration/v1/ingestions
{
"name": "csv-simple",
"source": "CSV",
"folderName": "csv-simple",
"separator": ",",
"headers": {
"inferHeaders": true
}
}
Konsol
- Buka antarmuka web Manufacturing Connect.
- Akses konfigurasi File Ingestion Specification.
Buka bagian FILE INGESTION di menu Atas bagian 'Cloud Management'.

File Ingestion Specifications yang ada tercantum di bagian FILE INGESTION . File tersebut dapat di ubah, diaktifkan, dinonaktifkan, atau dihapus menggunakan ikon 'Actions' di samping setiap spesifikasi penyerapan.

Untuk membuat File Ingestion Specification baru, klik ADD NEW INGESTION SPECIFICATION.
Menu samping baru akan ditampilkan di sebelah kanan layar yang berisi semua parameter yang diperlukan untuk menentukan File Ingestion Specification baru:

Untuk membuat File Ingestion Specification baru, klik 'ADD NEW INGESTION SPECIFICATION'.
Menu samping baru akan ditampilkan di sebelah kanan layar yang berisi semua parameter yang diperlukan untuk menentukan.
File Ingestion Specification:

Untuk membuat spesifikasi penyerapan file CSV yang menyimpulkan nama kolom dari header, pilih CSV dari menu 'Source Type' dan berikan tujuh parameter yang diperlukan, dalam contoh ini:
- name: Nama untuk File Ingestion Specification.
- folderName: Folder tempat file untuk File Ingestion Specification akan diupload.
- separator: Pemisah yang akan digunakan (
,digunakan jika tidak ada yang diberikan). - skip_rows: Apakah akan melewati baris sebelum mulai membaca file CSV.
- headers:
- infer_headers: Apakah header harus disimpulkan oleh baris pertama yang dibaca. Pilih 'YES' untuk menyimpulkan nama kolom dari header.
- insert_metadata: Apakah akan menyertakan metadata terkait file yang diserap (filePath, fileName, ingestionName).

Setelah parameter selesai, klik 'CREATE'.
Jika spesifikasi penyerapan file baru berhasil dibuat, pesan konfirmasi akan muncul.
Menyerap file CSV yang memberikan nama kolom dan menambahkan metadata penyerapan
REST
POST configuration/v1/ingestions
{
"name": "csv-headers-metadata",
"source": "CSV",
"folderName": "csv-headers",
"separator": ",",
"insertMetadata": true,
"headers": {
"headerNames": {
"names": ["one", "two", "three"]
}
}
}
Konsol
- Akses konfigurasi File Ingestion Specification.
Buka bagian FILE INGESTION di menu Atas bagian 'Cloud Management'.

File Ingestion Specifications yang ada tercantum di bagian FILE INGESTION . File tersebut dapat di ubah, diaktifkan, dinonaktifkan, atau dihapus menggunakan ikon 'Actions' di samping setiap spesifikasi penyerapan.

Untuk membuat File Ingestion Specification baru, klik ADD NEW INGESTION SPECIFICATION.
Menu samping baru akan ditampilkan di sebelah kanan layar yang berisi semua parameter yang diperlukan untuk menentukan File Ingestion Specification baru:

Untuk membuat spesifikasi penyerapan file CSV yang memberikan nama kolom dan menambahkan metadata penyerapan, pilih CSV dari 'Source Type'.
Berikan delapan parameter yang diperlukan, dalam contoh ini:
- name: Nama untuk File Ingestion Specification.
- folderName: Folder tempat file untuk File Ingestion Specification akan diupload.
- separator: Pemisah yang akan digunakan (
,digunakan jika tidak ada yang diberikan). - skip_rows: Apakah akan melewati baris sebelum mulai membaca file CSV.
- headers:
- infer_headers: Apakah header harus disimpulkan oleh baris pertama yang dibaca. Pilih 'NO' agar nama kolom tidak disimpulkan dari header.
- headerNames: Berikan daftar nama header yang diurutkan untuk digunakan.
- insert_metadata: Apakah akan menyertakan metadata terkait file yang diserap (filePath, fileName, ingestionName).

Setelah parameter selesai, klik tombol 'CREATE'. Jika spesifikasi penyerapan file baru berhasil dibuat, pesan konfirmasi akan muncul.
Menyerap file CSV yang menyimpulkan nama header dan melewati 5 baris sebelum mulai membaca file
REST
POST configuration/v1/ingestions
{
"name": "csv-skip-rows",
"source": "CSV",
"folderName": "csv-skip",
"skipRows": 5,
"separator": ",",
"headers": {
"inferHeaders": true
}
}
Konsol
- Akses konfigurasi File Ingestion Specification.
Buka bagian FILE INGESTION di menu Atas bagian 'Cloud Management'.

File Ingestion Specifications yang ada tercantum di bagian FILE INGESTION . File tersebut dapat di ubah, diaktifkan, dinonaktifkan, atau dihapus menggunakan ikon 'Actions' di samping setiap spesifikasi penyerapan.

Untuk membuat File Ingestion Specification baru, klik ADD NEW INGESTION SPECIFICATION.
Menu samping baru akan ditampilkan di sebelah kanan layar yang berisi semua parameter yang diperlukan untuk menentukan File Ingestion Specification baru:

Untuk membuat spesifikasi penyerapan file CSV yang menyimpulkan nama header dan melewati 5 baris , pilih CSV dari menu 'Source Type'.
Berikan tujuh parameter yang diperlukan, dalam contoh ini:
- name: Nama untuk File Ingestion Specification.
- folderName: Folder tempat file untuk File Ingestion Specification akan diupload.
- separator: Pemisah yang akan digunakan (
,digunakan jika tidak ada yang diberikan). - skip_rows: Pilih jumlah baris yang akan dilewati, dalam hal ini 5.
- headers:
- infer_headers: Apakah header harus disimpulkan oleh baris pertama yang dibaca. Pilih 'YES' untuk menyimpulkan nama kolom dari header.
- insert_metadata: Apakah akan menyertakan metadata terkait file yang diserap (filePath, fileName, ingestionName).

Setelah parameter selesai, klik 'CREATE'.
Jika spesifikasi penyerapan file baru berhasil dibuat, pesan konfirmasi akan muncul.
Menyerap file AVRO yang dihasilkan oleh jalur mentah Cloud Storage Writer
REST
POST configuration/v1/ingestions
{
"name": "avro-reprocess",
"source": "AVRO_RAW_WRITER",
"folderName": "avro-raw"
}
Hal ini sangat berguna jika Anda perlu memproses ulang file. Anda dapat menggunakan partisi tanggal di folder file mentah untuk hanya menyalin file dari rentang waktu yang diperlukan. Contoh:
gcloud storage cp "gs://<project-id>-raw/v1/dt=2023-06-19/*" \
gs://<project-id>-batch-ingestion/avro-raw/
Konsol
- Akses konfigurasi File Ingestion Specification.
Buka bagian FILE INGESTION di menu Atas bagian 'Cloud Management'.

File Ingestion Specifications yang ada tercantum di bagian FILE INGESTION . File tersebut dapat di ubah, diaktifkan, dinonaktifkan, atau dihapus menggunakan ikon 'Actions' di samping setiap spesifikasi penyerapan.

Untuk membuat File Ingestion Specification baru, klik ADD NEW INGESTION SPECIFICATION.
Menu samping baru akan ditampilkan di sebelah kanan layar yang berisi semua parameter yang diperlukan untuk menentukan File Ingestion Specification baru:

Untuk membuat spesifikasi penyerapan file AVRO yang dihasilkan oleh jalur mentah Cloud Storage Writer , pilih AVRO Raw dari menu 'Source Type' dan berikan dua parameter yang diperlukan, dalam contoh ini:
- name: Nama untuk File Ingestion Specification.
- folderName: Folder tempat file untuk File Ingestion Specification akan diupload.

Setelah parameter selesai, klik 'CREATE'.
Jika spesifikasi penyerapan file baru berhasil dibuat, pesan konfirmasi akan muncul.
Hal ini sangat berguna jika Anda perlu memproses ulang file. Anda dapat menggunakan partisi tanggal di folder file mentah untuk hanya menyalin file dari rentang waktu yang diperlukan, misalnya:
gcloud storage cp "gs://<project-id>-raw/v1/dt=2023-06-19/*" \
gs://<project-id>-batch-ingestion/avro-raw/