Cassandra DateTime Operators

Cassandra DateTime Operators

“Não importa qual paradigma de banco de dados você escolher, você encontrará uma instância em que precisa trabalhar com datas e tipos de dados de data. É, portanto, estar familiarizado com os tipos de data suportados para o seu banco de dados e como usá -los.

Este tutorial abordará o básico dos tipos de dados de data em Apache Cassandra, o formato suportado e como inseri -los em uma tabela Cassandra.”

Tipos de dados de data de Cassandra

Existem cinco tipos de dados principais ao trabalhar com os valores de data e hora de Cassandra. Esses tipos de dados incluem:

    1. data
    2. tempo
    3. Timestamp
    4. duração
    5. DaterangeType

Tipo de dados de data

Como o nome sugere, o tipo de data armazena um valor de data. É um número inteiro de 32 bits que representa o número de dias decorridos desde a época.

O formato do tipo de data segue o formato como mostrado:

AAAA-MM-DD


Onde:

    1. AYYY - representa os quatro dígitos de um ano
    2. MM - Dois dígitos representando o mês
    3. DD - mostra a data

Por exemplo, o snippet a seguir mostra um tipo de data correta e incorreta em Cassandra:

# válido
2022-10-10
# inválido
10-10-2022

Tipo de dados de tempo

O tipo de dados de tempo é um número inteiro assinado codificado de 64 bits que é usado para representar o número de nanossegundos desde a meia-noite.

O formato para um tipo de dados de tempo é como mostrado:

HH: MM: SS [.fff]


Onde o:

    1. Hh - são os dois dígitos que representam o relógio de 24 horas
    2. Mm - dois números mostrando a ata
    3. SS - mostra o número de segundos
    4. FFF - são até três dígitos que representam o número de subsendos

A seguir, mostra tipos de dados de tempo válidos:

17: 13: 34: 300
17:13:34

Tipo de dados de data e hora

Os dados de data e hora são usados ​​para representar a data e a hora desde a época. Este é um número inteiro assinado de 64 bits codificado.

Aaaaaa-mm-dd [(t |) hh: mm: ss [.fff]] [(+|-) nnnn]


O valor de um registro de data e hora é composto por três partes principais:

    1. Data-AAAA-MM-DD
    2. Tempo - hh: mm: ss [.fff]
    3. Fuso horário - (+| - nnnn)

A seção de data do registro de data e hora é necessária. Os outros dois são opcionais.

O exemplo a seguir mostra valores válidos de timestamp:

2022-10-10 17: 13: 34: 300+0300
2022-10-10 17:13:34.300
2022-10-10 17:13:34
2022-10-10

Tipo de dados de duração

O tipo de dados de duração representa a duração do tempo codificada como um número inteiro assinado de comprimento variável.

Os números inteiros são:

    1. Meses
    2. Dias
    3. Nanossegundos

Tipo de daterange

Este tipo de dados é usado para armazenar o intervalo entre duas datas. Este tipo de dados segue o formato como mostrado abaixo:

'[começo_date para end_date]'

Exemplo Cassandra Date and Horeting Types Schema

O código a seguir mostra como definir vários tipos de dados de data e hora em uma tabela Cassandra.

Crie tabela time_testing (
id uuid,
DATE_TYPE DATA,
DATE_RANGE_TYPE DATA,
duração_type Duração,
Time_Type Time,
Timestamp_Type Timestamp,
Chave primária (id)
);


No exemplo acima, definimos as várias cinco colunas, cada uma representando uma data ou tipo de dados específico.

NOTA: Se você usar o DaterangeType, precisará definir o tipo de esquema como uma data. Você pode inserir um valor de data, conforme mostrado na instrução Insert abaixo:

Inserir no time_testing (id, date_type, date_range_type, duration_type, time_type, timestamp_type)
Valores (8369e12-A0A9-491E-BDD4-2B4EBED5D705, '2022-10-10', '2022-10-10', 24H10M38S, '05: 13: 34 ',' 2022-10-10 17:13:344.300+0300 ');


A consulta acima deve inserir os vários tipos de dados na tabela especificada. Os registros resultantes são os mostrados:

selecione * do time_testing;


A consulta acima deve devolver a tabela com todos os registros de tempo.

Terminação

Esta postagem cobriu os vários tipos de dados de data e hora fornecidos em Apache Cassandra. É bom ter em mente que várias adaptações de Cassandra podem diferir nos tipos suportados. Verifique a documentação da sua versão Cassandra para saber mais.

Codificação feliz!!