Преобразуйте типы данных CQL в типы данных MATLAB с помощью интерфейса Apache Cassandra Database C++

При импорте данных в MATLAB® использование Apache Cassandra® интерфейс C++ базы данных, partitionRead и executecql функции преобразуют типы данных языка запросов Cassandra (CQL) в типы данных MATLAB. При экспорте данных из MATLAB в базу данных Cassandra, upsert функция преобразует типы данных MATLAB в типы данных CQL. В этой таблице описываются типы данных CQL и показываются соответствующие типы данных MATLAB для импорта и экспорта данных.

Тип данных CQLОписание типа данных CQLТип данных табличной переменной MATLAB для импорта данныхТип данных табличной переменной MATLAB для экспорта данных

ascii

Символьная строка US-ASCII

string

char, string, или массив ячеек из векторов символов

bigint

64-битное длинное целое число со знаком

int64

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • logical

blob

Произвольные байты (без валидации)

uint8

массив ячеек из числовых векторов

boolean

true или false

logical

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • logical

counter

Распределенное значение счетчика (64-битное длинное целое число)

int64

Не поддерживается upsert функция

date

Значение является датой без соответствующего временного значения. Кассандра кодирует дату как 32-битное целое число, представляющее дни с эпохи (1 января 1970).

datetime массив без временного компонента и часового пояса

datetime массив, char, string, или массив ячеек из векторов символов

decimal

Десятичное число переменной точности

string

  • string

  • массив ячеек из векторов символов

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • sym

double

64-разрядный IEEE®-754 с плавающей точкой

double

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • logical

float

32-битный IEEE-754 с плавающей точкой

single

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • logical

inet

Строка IP-адреса в IPv4 или IPv6 формате

string

char, string, или массив ячеек из векторов символов

int

32-битное целое число со знаком

int32

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • logical

список < type>

Набор одного или нескольких упорядоченных элементов (для примера, [literal, literal, literal])

Массив типов данных, по одному для каждого элемента в наборе.

Для примера, если столбец таблицы базы данных Cassandra имеет list<int> тип данных, затем каждая строка в таблице MATLAB содержит массив int32 типы данных. В этом случае тип данных табличной переменной MATLAB является массивом ячеек из массивов.

Массив ячеек из векторов, где каждый вектор совместим с типом списка.

Например, если таблица базы данных Cassandra содержит list<int>, тогда таблица MATLAB должна содержать массив ячеек из числовых векторов.

карта < keyType,valueType>

Массив литералов в стиле JSON (для примера, { literal : literal, literal : literal, ...})

Система координат n-by-2 Таблица MATLAB где n - количество пар "ключ-значение" в карте. Первая переменная Keys имеет ключи от карты. Тип данных для этой переменной зависит от типа ключа, заданного для карты. Точно так же Values переменная имеет значения, которые соответствуют каждой клавише. Тип данных для Values переменная зависит от типа значения, заданного для карты.

Для примера, если столбец таблицы базы данных Cassandra имеет map<text,double> тип данных, затем partitionRead и executecql функции преобразуют этот тип данных в таблицу MATLAB. Таблица имеет Keys переменная как строковые скаляры и Values переменная как double массив. В этом случае тип данных табличной переменной MATLAB является массивом ячеек из таблиц.

Массив ячеек из таблиц, где каждая таблица содержит Keys и Values переменные.

Типы данных этих двух переменных совместимы с типами данных ключей и значений карты базы данных Кассандры.

Например, если таблица базы данных Cassandra содержит map<int,text>, тогда таблица MATLAB должна содержать массив ячеек из таблиц, где каждая таблица имеет Keys переменная, которая является числовой и a Values переменная, которая является строкой.

установите < type>

Набор одного или нескольких элементов (для примера, {literal, literal, literal})

Массив типов данных, по одному для каждого элемента в наборе.

Для примера, если столбец базы данных Cassandra имеет set<float> тип данных, затем каждая строка в получившейся таблице MATLAB содержит массив single значения. В этом случае тип данных табличной переменной MATLAB является массивом ячеек из массивов.

Массив ячеек из векторов, где каждый вектор совместим с типом набора.

Например, если таблица базы данных Cassandra содержит set<int>, тогда таблица MATLAB должна содержать массив ячеек из числовых векторов.

smallint

2-байтовое целое число

int16

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • logical

text

UTF-8 закодированную строку

string

char, string, или массив ячеек из векторов символов

time

База данных Кассандра кодирует это значение как 64-битное целое число со знаком, которое представляет количество наносекунд с полуночи.

duration массив

duration массив, char, string, или массив ячеек из векторов символов

timestamp

Дата и время с миллисекундной точностью, закодированные как 8 байт с эпохи (1 января 1970)

datetime массив с компонентом даты и часовым поясом в виде UTC или GMT

datetime массив, char, string, или массив ячеек из векторов символов

timeuuid

Только UUID версии 1

string

char, string, или массив ячеек из векторов символов

tinyint

1-байтовое целое число

int8

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • logical

кортеж < Type1,...,TypeN>

Группа неназванных, но типизированных полей

A 1-by- n Таблица MATLAB, где n - количество полей в кортеже. Имена переменных Var1, Var2, Var3и так далее, пока Var (n). Тип данных каждой переменной зависит от типов данных Кассандры, определенных в кортеже.

Для примера, если столбец базы данных Cassandra имеет tuple<text,smallint,timestamp> тип данных, затем partitionRead и executecql функции преобразуют этот тип данных в таблицу MATLAB. Таблица имеет Var1 переменная как string массив, Var2 как int16 массив, и Var3 как datetime массив. В этом случае тип данных табличной переменной MATLAB является таблицей.

Таблица MATLAB.

Положение каждой переменной в таблице определяет, на какое поле переменная преобразуется в кортеж. Первая переменная в таблице преобразуется в первое поле кортежа, вторая переменная - во второе поле и так далее.

Например, если таблица базы данных Cassandra содержит tuple<int,text>, тогда таблица MATLAB должна содержать таблицу, где первая переменная является числовой, а вторая - строковой.

определяемый пользователем тип (UDT)

Группа именованных полей

A 1-by- n Таблица MATLAB, где n - количество полей в определяемом пользователем типе. Имена переменных совпадают с именами полей определяемого пользователем типа. Тип данных каждой переменной зависит от типов данных Кассандры, определенных в UDT. Тип данных табличной переменной MATLAB является таблицей.

Таблица MATLAB.

Имена переменных в таблице должны совпадать с именами полей определяемого пользователем типа. Тип данных каждой переменной в таблице должен быть совместим с типом данных Кассандры соответствующего поля UDT.

uuid

UUID в стандартном формате UUID

string

char, string, или массив ячеек из векторов символов

varchar

UTF-8 закодированную строку

string

char, string, или массив ячеек из векторов символов

varint

Целое число произвольной точности

string

  • string

  • массив ячеек из векторов символов

  • double

  • single

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

  • sym

Примечание

Для типа данных CQL, если тип данных является набором (для примера, list, map, и так далее), тогда значение содержит угловые скобки (<>). Эти скобки окружают типы данных элементов набора. Для получения дополнительной информации о допустимых типах данных Cassandra см. типы данных CQL.

См. также

| |

Похожие темы

Внешние веб-сайты