Tipi di dati Arrow e protocol buffer supportati
Questo documento descrive i tipi di dati Arrow e protocol buffer supportati per ogni tipo di dati BigQuery. Prima di leggere questo documento, leggi Panoramica dell'API BigQuery Storage Write.
Tipi di dati del buffer del protocollo supportati
La seguente tabella mostra i tipi di dati supportati nei buffer di protocollo e il formato di input corrispondente in BigQuery:
| Tipo di dati BigQuery | Tipi di buffer di protocollo supportati | 
|---|---|
BOOL | 
      bool, int32, int64,
        uint32, uint64, google.protobuf.BoolValue | 
    
BYTES | 
      bytes, string, google.protobuf.BytesValue | 
    
DATE | 
      int32 (preferito), int64, string
      
        Il valore è il numero di giorni a partire dall'epoca Unix (1970-01-01). L'intervallo
        valido è compreso tra   | 
    
DATETIME, TIME | 
      string
       | 
    
int64
      Utilizza la 
        classe   | 
    |
FLOAT | 
      double, float, google.protobuf.DoubleValue, google.protobuf.FloatValue | 
    
GEOGRAPHY | 
      string
      Il valore è una geometria in formato WKT o 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.BytesValueUtilizza la
          
        classe   | 
    |
STRING | 
      string, enum, google.protobuf.StringValue | 
    
TIME | 
      string
      Il valore deve essere un
          | 
    
TIMESTAMP | 
      int64 (preferito), int32,
        uint32, google.protobuf.Timestamp
      Il valore è espresso in microsecondi a partire dall'epoca Unix (1970-01-01).  | 
    
INTERVAL | 
      string, google.protobuf.Duration
      Il valore stringa deve essere un
          | 
    
RANGE<T> | 
      message
      
        Un tipo di messaggio nidificato nel proto con due campi,   | 
    
REPEATED FIELD | 
      array
      Un tipo di array nel proto corrisponde a un campo ripetuto in BigQuery.  | 
    
RECORD | 
      message
      Un tipo di messaggio nidificato nel proto corrisponde a un campo record in BigQuery.  | 
    
Tipi di dati Apache Arrow supportati
La seguente tabella mostra i tipi di dati supportati in Apache Arrow e il formato di input corrispondente in BigQuery.
| Tipo di dati BigQuery | Tipi Apache Arrow supportati | Parametri di tipo supportati | 
|---|---|---|
BOOL | 
      Boolean | 
      |
BYTES | 
      Binary | 
      |
DATE | 
      Date | 
      unità = giorno | 
String, int32 | 
      ||
DATETIME | 
      Timestamp | 
      unit = MICROSECONDS
       timezone è vuoto  | 
    
FLOAT | 
      FloatingPoint | 
      Precisione in {SINGLE, DOUBLE} | 
GEOGRAPHY | 
      Utf8
      Il valore è una geometria in formato WKT o GeoJSON.  | 
      |
INTEGER | 
      int | 
      bitWidth in {8, 16, 32, 64}
       is_signed = false  | 
    
JSON | 
      Utf8 | 
      |
NUMERIC | 
      Decimal128 | 
      Puoi fornire un valore NUMERIC con qualsiasi precisione o scala inferiore all' intervallo supportato da BigQuery. | 
BIGNUMERIC | 
      Decimal256 | 
      Puoi fornire un valore BIGNUMERIC con qualsiasi precisione o scala inferiore all' intervallo supportato da BigQuery. | 
STRING | 
      Utf8 | 
      |
TIMESTAMP | 
      Timestamp | 
      unit= MICROSECONDS
           timezone = UTC  | 
    
INTERVAL | 
      Interval | 
      unit in {YEAR_MONTH, DAY_TIME, MONTH_DAY_NANO} | 
Utf8 | 
      ||
RANGE<T> | 
      Struct
      
        Lo struct Arrow deve avere due campi secondari denominati  Per la colonna  Per la colonna  Per  Un valore   | 
      |
REPEATED FIELD | 
      List | 
      Un valore NULL deve essere rappresentato da un elenco vuoto. | 
    
RECORD | 
      Struct |