全部产品
Search
文档中心

DataWorks:Sumber Data Azure Blob Storage

更新时间:Jul 02, 2025

DataWorks menyediakan Azure Blob Storage Reader untuk membaca data dari file yang tersimpan di Azure Blob Storage. Anda dapat menggunakan Azure Blob Storage Reader untuk mengakses, memproses, dan menyinkronkan data ke tujuan tertentu. Topik ini menjelaskan cara menyinkronkan data dari sumber data Azure Blob Storage.

Batasan

Pemetaan Tipe Data

Tabel berikut menjelaskan tipe data yang didukung oleh sumber data Azure Blob Storage.

Tipe Data

Deskripsi

STRING

Teks.

LONG

Integer.

BYTES

Array byte. Teks yang dibaca dikonversi menjadi array byte. Format pengkodeannya adalah UTF-8.

BOOL

Boolean.

DOUBLE

Floating point.

DATE

Tanggal dan waktu. Format tanggal dan waktu berikut didukung:

  • YYYY-MM-dd HH:mm:ss

  • yyyy-MM-dd

  • HH:mm:ss

Tambahkan Sumber Data

Sebelum mengembangkan tugas sinkronisasi yang menggunakan sumber data Azure Blob Storage, Anda harus menambahkan sumber data tersebut ke DataWorks. Untuk informasi lebih lanjut tentang cara menambahkan sumber data, lihat Tambahkan dan Kelola Sumber Data. Informasi tambahan mengenai parameter yang perlu dikonfigurasi tersedia pada tab konfigurasi sumber data.

Kembangkan Tugas Sinkronisasi Data

Konfigurasikan Tugas Sinkronisasi Batch untuk Menyinkronkan Data dari Satu Tabel

Lampiran: Kode dan Parameter

Konfigurasikan Tugas Sinkronisasi Batch Menggunakan Editor Kode

Jika Anda menggunakan editor kode untuk mengonfigurasi tugas sinkronisasi batch, Anda perlu menyesuaikan parameter pembaca sumber data sesuai dengan format yang ditentukan dalam editor kode. Untuk panduan format, lihat Konfigurasikan Tugas Sinkronisasi Batch Menggunakan Editor Kode. Berikut adalah rincian konfigurasi parameter untuk pembaca dalam editor kode.

Kode untuk Azure Blob Storage Reader

{
  "type": "job",
  "version": "2.0",
  "steps": [
    {
      "stepType": "azureblob",
      "parameter": {
        "datasource": "",
        "object": ["f/z/1.csv"],
        "fileFormat": "csv",
        "encoding": "utf8/gbk/...",
        "fieldDelimiter": ",",
        "useMultiCharDelimiter": true,
        "lineDelimiter": "\n",
        "skipHeader": true,
        "compress": "zip/gzip",
        "column": [
          {
            "index": 0,
            "type": "long"
          },
          {
            "index": 1,
            "type": "boolean"
          },
          {
            "index": 2,
            "type": "double"
          },
          {
            "index": 3,
            "type": "string"
          },
          {
            "index": 4,
            "type": "date"
          }
        ]
      },
      "name": "Reader",
      "category": "reader"
    },
    {
      "stepType": "stream",
      "parameter": {},
      "name": "Writer",
      "category": "writer"
    }
  ],
  "setting": {
    "errorLimit": {
      "record": "0"
    },
    "speed": {
      "concurrent": 1
    }
  },
  "order": {
    "hops": [
      {
        "from": "Reader",
        "to": "Writer"
      }
    ]
  }
}

Parameter dalam Kode untuk Azure Blob Storage Reader

Parameter

Deskripsi

Diperlukan

Nilai Default

datasource

Nama sumber data. Harus sama dengan nama sumber data yang telah ditambahkan. Anda dapat menambahkan sumber data menggunakan editor kode.

Ya

Tidak ada nilai default

fileFormat

Format file sumber. Nilai valid: csv, text, parquet, dan orc.

Ya

Tidak ada nilai default

object

Path file. Parameter ini diperlukan hanya jika parameter fileFormat diatur ke csv atau text.

Catatan

Parameter ini mendukung asterisk (*) dan array.

Contohnya, jika Anda ingin menyinkronkan data dari file 1.csv dan 2.csv yang disimpan di path a/b, Anda dapat mengatur parameter ini ke a/b/*.csv.

Diperlukan

jika fileFormat diatur ke csv atau text

Tidak ada nilai default

path

Path file. Parameter ini diperlukan hanya jika parameter fileFormat diatur ke parquet atau orc.

Catatan

Parameter ini mendukung asterisk (*) dan array.

Contohnya, jika Anda ingin menyinkronkan data dari file 1.orc dan 2.orc yang disimpan di path a/b, Anda dapat mengatur parameter ini ke a/b/*.orc.

Diperlukan

jika fileFormat diatur ke parquet atau orc

Tidak ada nilai default

column

Kolom dari mana Anda ingin membaca data. Parameter type menentukan tipe data sumber. Parameter index menentukan ID kolom dalam file sumber. ID kolom dimulai dari 0. Parameter value menentukan nilai kolom dari kolom konstan yang dihasilkan secara otomatis, bukan dibaca dari sumber.

Secara default, pembaca membaca semua data sebagai string berdasarkan konfigurasi berikut:

column": ["*"]

Anda juga dapat mengonfigurasi parameter column dalam format berikut:

"column":    
    {       
        "type": "long",       
        "index": 0 // Kolom pertama file dibaca. Kolom tersebut bertipe INT.
    },    
    {       
        "type": "string",       
        "value": "alibaba" // Kolom konstan bertipe STRING dihasilkan oleh Azure Blob Storage Reader. Nilai konstan kolom tersebut adalah alibaba.     
}
Catatan

Untuk parameter column, Anda harus mengonfigurasi parameter type dan salah satu dari parameter index atau value.

Ya

"column": ["*"]

fieldDelimiter

Delimeter kolom yang digunakan dalam file dari mana Anda ingin membaca data.

Catatan
  • Anda harus menentukan delimeter kolom untuk Azure Blob Storage Reader. Delimeter kolom default adalah koma (,). Jika Anda tidak menentukan delimeter kolom, delimeter kolom default akan digunakan.

  • Jika delimeter tidak dapat dicetak, masukkan nilai yang dikodekan dalam Unicode, seperti \u001b atau \u007c.

Ya

,

lineDelimiter

Delimeter baris yang digunakan dalam file dari mana Anda ingin membaca data.

Catatan

Parameter ini hanya berlaku jika parameter fileFormat diatur ke text.

Tidak

Tidak ada nilai default

compress

Format kompresi file. Secara default, parameter ini dibiarkan kosong, yang menunjukkan bahwa file tidak dikompresi. Format kompresi berikut didukung: GZIP, BZIP2, dan ZIP.

Tidak

Tidak ada nilai default

encoding

Format pengkodean file dari mana Anda ingin membaca data.

Tidak

utf-8

nullFormat

String yang mewakili pointer null. Tidak ada string standar yang dapat mewakili pointer null dalam file TXT. Anda dapat menggunakan parameter ini untuk mendefinisikan string yang mewakili pointer null.

  • Jika Anda menentukan nullFormat:"null", pembaca menganggap string yang dapat dicetak null sebagai pointer null.

  • Jika Anda menentukan nullFormat:"\u0001", pembaca menganggap string yang tidak dapat dicetak \u0001 sebagai pointer null.

  • Jika Anda tidak mengonfigurasi parameter nullFormat, pembaca tidak akan mengonversi data sumber.

Tidak

Tidak ada nilai default

skipHeader

Menentukan apakah akan melewati header dalam file CSV. Nilai valid:

  • True: Pembaca membaca header dalam file CSV.

  • False: Pembaca mengabaikan header dalam file CSV.

Catatan

Parameter skipHeader tidak tersedia untuk file terkompresi.

Tidak

false

parquetSchema

Skema file Parquet yang ingin Anda baca. Jika Anda mengatur parameter fileFormat ke parquet, Anda harus mengonfigurasi parameter parquetSchema. Pastikan seluruh skrip sesuai dengan sintaks JSON.

message MessageTypeName {
required, dataType, columnName;
......................;
}

Parameter parquetSchema berisi bidang berikut:

  • MessageTypeName: nama tipe pesan.

  • required: menunjukkan bahwa kolom tidak boleh dibiarkan kosong. Anda juga dapat menentukan optional berdasarkan kebutuhan bisnis Anda. Kami merekomendasikan agar Anda menentukan optional untuk semua kolom.

  • dataType: File Parquet mendukung berbagai tipe bidang, seperti BOOLEAN, INT32, INT64, INT96, FLOAT, DOUBLE, BINARY, dan FIXED_LEN_BYTE_ARRAY. Atur parameter ini ke BINARY jika bidang menyimpan string.

  • Setiap baris, termasuk yang terakhir, harus diakhiri dengan titik koma (;).

Contoh konfigurasi:

"parquetSchema": "message m { optional int32 minute_id; optional int32 dsp_id; optional int32 adx_pid; optional int64 req; optional int64 res; optional int64 suc; optional int64 imp; optional double revenue; }"

Tidak

Tidak ada nilai default

csvReaderConfig

Konfigurasi yang diperlukan untuk membaca file CSV. Nilai parameter harus sesuai dengan tipe MAP. Anda dapat menggunakan pembaca file CSV untuk membaca data dari file CSV. Jika Anda tidak mengonfigurasi parameter ini, nilai default digunakan.

Tidak

Tidak ada nilai default

maxRetryTimes

Jumlah maksimum percobaan ulang yang diizinkan jika file gagal diunduh.

Catatan
  • Anda dapat mengatur parameter ini ke 0 untuk menonaktifkan fitur percobaan ulang unduhan.

  • Parameter ini merupakan parameter tingkat lanjut, yang hanya tersedia di editor kode.

Tidak

0

retryIntervalSeconds

Interval percobaan ulang yang diizinkan jika file gagal diunduh. Unit: detik.

Catatan

Parameter ini merupakan parameter tingkat lanjut, yang hanya tersedia di editor kode.

Tidak

5