Tipos de dados - Amazon Simple Storage Service

Tipos de dados

O Amazon S3 Select oferece suporte a vários tipos de dados primitivos.

Conversões de tipos de dados

A regra geral é seguir a função CAST se for definida. Se CAST não estiver definido, todos os dados de entrada serão tratados como uma string. Nesse caso, é necessário converter seus dados de entrada em tipos de dados relevantes quando necessário.

Para obter mais informações sobre a função CAST, consulte CAST.

Tipos de dados compatíveis

O Amazon S3 Select oferece suporte ao conjunto a seguir de tipos de dados primitivos.

Name (Nome)

Descrição

Exemplos

bool

Um valor booliano, TRUE ou FALSE.

FALSE

int, integer

Um número inteiro assinado de 8 bytes no intervalo de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807.

100000

string

Uma string de tamanho variável codificada por UTF8. O limite padrão é de um caractere. O limite máximo de caracteres é 2.147.483.647.

'xyz'

float

Um número de ponto flutuante de 8 bytes.

CAST(0.456 AS FLOAT)

decimal, numeric

Um número de base 10, com precisão máxima de 38 (ou seja, a quantidade máxima de dígitos significativos) e com uma escala no intervalo de -231 a 231-1 (ou seja, o expoente de base 10).

nota

O Amazon S3 Select ignora a escala e a precisão quando as duas são fornecidas ao mesmo tempo.

123.456

timestamp

Os carimbos de data/hora representam um momento específico, sempre incluem um deslocamento local e são capazes de oferecer precisão arbitrária.

No formato de texto, os carimbos de data/hora seguem a nota W3C sobre formatos de data e hora, mas devem terminar com o literal T, se os carimbos de data/hora não forem pelo menos a precisão de dia inteiro. As frações de segundos são permitidas, com pelo menos um dígito de precisão e um máximo ilimitado. Os deslocamentos de hora local podem ser representados como deslocamentos de hora:minuto em UTC ou como o literal Z para indicar uma hora local em UTC. Os deslocamentos de horário local são necessários em carimbos de data/hora com hora e não são permitidos em valores de data.

CAST('2007-04-05T14:30Z' AS TIMESTAMP)

Tipos compatíveis de Parquet

O Amazon S3 Select é compatível com os seguintes tipos de Parquet.

  • DATE

  • DECIMAL

  • ENUM

  • INT(8)

  • INT(16)

  • INT(32)

  • INT(64)

  • LIST

    nota

    Para a saída do tipo LIST do Parquet, o Amazon S3 Select só é compatível com o formato JSON. No entanto, se a consulta limitar os dados a valores simples, o tipo de Parquet LIST também poderá ser consultado em formato CSV.

  • STRING

  • Precisão compatível de TIMESTAMP (MILLIS/MICROS/NANOS)

    nota

    Não há compatibilidade com carimbos de data/hora salvos como INT(96).

    Devido ao intervalo do tipo INT(64), os carimbos de data/hora que usam a unidade NANOS só podem representar valores entre 1677-09-21 00:12:43 e 2262-04-11 23:47:16. Valores fora desse intervalo não podem ser representados com a unidade NANOS.

Mapeamento de tipos de Parquet para tipos de dados compatíveis no Amazon S3 Select

Tipos do Parquet

Tipos de dados compatíveis

DATE

timestamp

DECIMAL

decimal, numeric

ENUM

string

INT(8)

int, integer

INT(16)

int, integer

INT(32)

int, integer

INT(64)

decimal, numeric

LIST

Cada tipo de Parquet na lista é mapeado para o tipo de dados correspondente.

STRING

string

TIMESTAMP

timestamp