Jenis data Arrow dan buffering protokol yang didukung
Dokumen ini menjelaskan jenis data Arrow dan buffering protokol yang didukung untuk setiap jenis data BigQuery. Sebelum membaca dokumen ini, baca Ringkasan BigQuery Storage Write API.
Jenis data buffering protokol yang didukung
Tabel berikut menunjukkan jenis data yang didukung dalam buffer protokol dan format input yang sesuai di BigQuery:
| Jenis data BigQuery | Jenis buffering protokol yang didukung | 
|---|---|
BOOL | 
      bool, int32, int64,
        uint32, uint64, google.protobuf.BoolValue | 
    
BYTES | 
      bytes, string, google.protobuf.BytesValue | 
    
DATE | 
      int32 (pilihan), int64, string
      
        Nilainya adalah jumlah hari sejak epoch Unix (1970-01-01). Rentang yang valid adalah   | 
    
DATETIME, TIME | 
      string
       | 
    
int64
      Gunakan 
        class   | 
    |
FLOAT | 
      double, float, google.protobuf.DoubleValue, google.protobuf.FloatValue | 
    
GEOGRAPHY | 
      string
      Nilainya merupakan geometri dalam format WKT atau GeoJson.  | 
    
INTEGER | 
      int32, int64, uint32,
        enum, google.protobuf.Int32Value,
        google.protobuf.Int64Value,
        google.protobuf.UInt32Value | 
    
JSON | 
      string | 
    
NUMERIC, BIGNUMERIC | 
      int32, int64, uint32,
        uint64, double, float,
        string | 
    
bytes, google.protobuf.BytesValueGunakan
          
          | 
    |
STRING | 
      string, enum, google.protobuf.StringValue | 
    
TIME | 
      string
      Nilai ini harus berupa literal   | 
    
TIMESTAMP | 
      int64 (pilihan), int32,
        uint32, google.protobuf.Timestamp
      Nilai ini diberikan dalam mikrodetik sejak Unix epoch (1970-01-01).  | 
    
INTERVAL | 
      string, google.protobuf.Duration
      Nilai string harus berupa literal   | 
    
RANGE<T> | 
      message
      
        Jenis pesan bertingkat di proto dengan dua kolom,   | 
    
REPEATED FIELD | 
      array
      Jenis array di proto sesuai dengan kolom berulang di BigQuery.  | 
    
RECORD | 
      message
      Jenis pesan bertingkat di proto sesuai dengan kolom catatan di BigQuery.  | 
    
Jenis data Apache Arrow yang didukung
Tabel berikut menunjukkan jenis data yang didukung di Apache Arrow dan format input yang sesuai di BigQuery.
| Jenis data BigQuery | Jenis Apache Arrow yang didukung | Parameter jenis yang didukung | 
|---|---|---|
BOOL | 
      Boolean | 
      |
BYTES | 
      Binary | 
      |
DATE | 
      Date | 
      unit = Hari | 
String, int32 | 
      ||
DATETIME | 
      Timestamp | 
      unit = MICROSECONDS
       zona waktu kosong  | 
    
FLOAT | 
      FloatingPoint | 
      Presisi dalam {SINGLE, DOUBLE} | 
GEOGRAPHY | 
      Utf8
      Nilainya merupakan geometri dalam format WKT atau GeoJson.  | 
      |
INTEGER | 
      int | 
      bitWidth dalam {8, 16, 32, 64}
       is_signed = false  | 
    
JSON | 
      Utf8 | 
      |
NUMERIC | 
      Decimal128 | 
      Anda dapat memberikan NUMERIC yang memiliki presisi atau skala yang lebih kecil daripada rentang yang didukung BigQuery. | 
BIGNUMERIC | 
      Decimal256 | 
      Anda dapat memberikan BIGNUMERIC yang memiliki presisi atau skala apa pun yang lebih kecil dari rentang yang didukung BigQuery. | 
STRING | 
      Utf8 | 
      |
TIMESTAMP | 
      Timestamp | 
      unit= MICROSECONDS
           timezone = UTC  | 
    
INTERVAL | 
      Interval | 
      unit dalam {YEAR_MONTH, DAY_TIME, MONTH_DAY_NANO} | 
Utf8 | 
      ||
RANGE<T> | 
      Struct
      
        Struct Arrow harus memiliki dua subkolom bernama  Untuk kolom  Untuk kolom  Untuk  Nilai   | 
      |
REPEATED FIELD | 
      List | 
      Nilai NULL harus direpresentasikan oleh daftar kosong. | 
    
RECORD | 
      Struct |