Supported Data Types

This page provides details on the data types used within KDB.AI tables, including name, range/example, brief description, and usage.

In KDB.AI, tables are fundamental structures for storing and organizing data. A schema is a list of column definitions that defines the structure of a table. Each column holds data of a specific type, such as integers, symbols, or dates.

Here’s a list of supported data types (scalar and list) in KDB.AI tables:

Datatype

q Type (scalar/list)

JSON Type (scalar/list)

Python (scalar/list)

Example/Range

Description

Usage

boolean

b / B

boolean / booleans

bool / bools

true, false

Represents true or false values

Used for binary conditions and flags

byte

x / X

byte / bytes

uint8 / uint8s

0 to 255

8-bit unsigned integer

Used for raw binary data

char

c / C

char / chars

char / bytes

'a', 'b', 'c'

Single character

Used for single character data

date

d / D

date / dates

datetime64[D] / datetime64[D]s

2024.10.30

Calendar date

Used for date-specific data

float

f / F

float / floats

float64 / float64s

3.14, 2.718

Double-precision floating-point number

Used for high-precision numerical data

guid

g / G

guid / guids

guid / guids

123e4567-e89b-12d3-a456-426614174000

Globally unique identifier

Used for unique identification

int

i / I

int / ints

int32 / int32s

-2147483648 to 2147483647

32-bit signed integer

Used for general integer data

long

j / J

long / longs

int64 / int64s

-9223372036854775808 to 9223372036854775807

64-bit signed integer

Used for large integer data

minute

u / U

minute / minutes

timedelta64[m] / timedelta64[m]s

12:34

Time duration in minutes

Used for time intervals

month

m / M

month / months

datetime64[M] / datetime64[M]s

2024.10

Year and month

Used for monthly data

real

e / E

real / reals

float32 / float32s

3.14, 2.718

Single-precision floating-point number

Used for numerical data with less precision

second

v / V

second / seconds

timedelta64[s] / timedelta64[s]s

12:34:56

Time duration in seconds

Used for time intervals

short

h / H

short / shorts

int16 / int16s

-32768 to 32767

16-bit signed integer

Used for smaller integer data

symbol

s / S

symbol / symbols

str

AAPL, GOOG

Interned string

Used for categorical data

time

t / T

time / times

timedelta64[ms] / timedelta64[ms]s

12:34:56.789

Time of day with millisecond precision

Used for time-specific data

timestamp

p / P

timestamp / timestamps

datetime64[ns] / datetime64[ns]s

2024.10.30T12:34:56.789

Date and time with nanosecond precision

Used for precise date-time data

timespan

n / N

timespan / timespans

timedelta64[ns]

1234567890ns

Time duration with nanosecond precision

Used for high-precision time intervals

Database types and JSON formats

For data ingestion, use the corresponding JSON formats for database types as below:

Database type ID

Database type name

JSON data format

Description

Example

-1h

boolean

Boolean

A Boolean literal of true or false

true

-2h

guid

String

A 36 character UUIDv4 formatted String

"77579e36-71e7-d395-5551-5a4221e86e2b"

-4h

byte

String

A 2 character hex string

ff

-5h

short

Number

A 16 bit number

32767

-6h

int

Number

A 32 bit number

2147483647

-7h

long

Number

A 64 bit number

4611686018427387904

-8h

real

Number

A 32 bit floating point number

3.14159265

-9h

float

Number

A 64 bit floating point number

3.14159265

-10h

char

String

A string of a single character

"a"

-11h

symbol

String

A string representing a symbol

"BTC"

-12h

timestamp

String

A ISO date-time without an offset in format 'yyyy-MM-dd'T'HH:mm:ss' with optional 0-9 decimals for nanoseconds

"2023-01-01T00:00:00.000000000"

-13h

month

String

A string representing a month in format MM-dd

"2023-10"

-14h

date

String

A string representing an ISO Date without an offset in format yyyy-MM-dd

"2023-10-01"

-15h

datetime

String

A ISO date-time without an offset in format 'yyyy-MM-dd'T'HH:mm:ss' with optional 0-3 decimals for milliseconds

"2023-01-01T00:00:00.000"

-16h

timespan

String

A duration of time with units in nanoseconds 'd'D'HH:mm:ss' with optional 0-9 decimals for nanoseconds

"0D00:00:00.000000005"

-17h

minute

String

A duration of time in HH:mm

"22:59"

-18h

second

String

A duration of time in HH:mm:ss

"22:59:13"

-19h

time

String

A duration fo time in HH:mm:ss with optional 0-9 decimals for nanosecond precision

"22:59:13.000000000"

1h

booleans

Array<Boolean>

Array of boolean values

[true, false]

2h

guids

Array<String>

Array of guid values

["09c4f826-b3f2-e699-c7ff-5195d89a0925", "c0b9ec94-87b6-b0e9-3427-312d62aaec9c"]

4h

bytes

Array<String>

Array of byte values

["ff", "0e"]

5h

shorts

Array<Number>

Array of short values

[32767, -32767]

6h

ints

Array<Number>

Array of int values

[2147483647, -2147483647]

7h

longs

Array<Number>

Array of long values

[4611686018427387904, -4611686018427387904]

8h

reals

Array<Number>

Array of real values

[1.1, 1.2]

9h

floats

Array<Number>

Array of float values

[1.1, 1.2]

10h

string

String

A string of text

"abcdef"

11h

symbols

Array<String>

Array of symbol values

["BTC","MSFT"]

12h

timestamps

Array<String>

Array of timestamp values

["2023-01-01T00:00:00.000000000", "2023-01-02T00:00:00.000000000"]

13h

months

Array<String>

Array of month values

["2023-10", "2023-11"]

14h

dates

Array<String>

Array of date values

["2023-10-01", "2023-10-02"]

15h

datetimes

Array<String>

Array of datetime values

["2023-01-01T00:00:00.000", "2023-01-02T00:00:00.000"]

16h

timespans

Array<String>

Array of timespan values

["0D00:00:00.000000005", "0D00:00:00.000000006"]

17h

minutes

Array<String>

Array of minute values

["22:59", "23:00"]

18h

seconds

Array<String>

Array of second values

["22:59:13", "22:59:14"]

19h

times

Array<String>

Array of time values

["22:59:13.000000000", "2023-01-01T00:00:00.001"]