先决条件 – Cassandra 中的用户定义类型 (UDT)
在本文中,我们将讨论 Cassandra 中不同类型的数据类型,它们在 Cassandra 中用于各种目的,例如数据建模、创建表等。
基本上,Cassandra 中有 3 种数据类型。我们来看一下。
现在,我们将在这里讨论 Cassandra 中的内置数据类型。
内置数据类型:
它是 Cassandra 中预定义的数据类型。我们可以直接使用,根据需要简单地给出数据类型名称。 Cassandra 中有许多内置数据类型。让我们一一讨论。
- 布尔值:
它是一种表示两个值(真或假)的数据类型。因此,我们可以在只需要两个值的地方使用这种类型的数据类型。true or false
句法:
CREATE TABLE table_name( field_name1 Boolean, ... );
- 斑点:
它用于二进制大对象,例如音频、视频或其他多媒体,有时还用于存储为 blob 的二进制可执行代码。binary large objects
句法:
CREATE TABLE table_name( field_name1 blob, ... );
- ASCII:
它用于字符串类型,例如单词和句子。它代表了字符的ASCII值。例如,对于 ‘A’ ASCII 值为 65。因此,它将存储其 ASCII 值。65 for A, 97 for a, etc.
句法:
CREATE TABLE table_name( field_name1 ascii, ... );
- 大整数:
它用于 64 位有符号长整数。基本上它用于高范围的整数,大致表示从 -(2^32) 到 +(2^32) 的值。only for integers -(2^32) to +(2^32)
句法:
CREATE TABLE table_name( field_name1 bigint, ... );
- 柜台:
它用于整数并表示计数器列。这些列代表列族的行的一部分,列族基本上包含数值,包含列数。1, 2, 3... (integer)
句法:
CREATE TABLE table_name( field_name1 counter, ... );
- 十进制:
它用于保存整数和浮点值。在十进制数据类型中,重要的是要注意当我们尝试保存十进制值(例如 .907(点 907))时,它会给出错误“在输入处没有可行的替代方案”。 (…DecimalValue) 值 (1, [.]…)”。如果我们需要像这样保存小数,那么从零开始,例如 0.907。10.45, 1, -1, 0.32...
句法:
CREATE TABLE table_name( field_name1 DECIMAL, ... );
- 双倍的:
它用于表示 64 位浮点的整数。它包括一个带小数点的数字。例如:5.838、10.45 等。10.4556, 3.566, 0.5875 etc.
句法:
CREATE TABLE table_name( field_name1 double, ... );
- 漂浮:
它用于表示 32 位浮点数的数字。它代表一个带小数点的数值。例如:6.254、5.23 等。5.423, 2.31, 3.12...[32 bit floating point]
句法:
CREATE TABLE table_name( field_name1 float, ... );
- 内网:
它用于表示包含数字和字符的 IP 地址。基本上它代表一个IP地址,IPv4或IPv6。例如,64.233.160.0 对于这种类型的地址,我们可以使用 inet 数据类型。64.233.160.0 ...[IP address, IPv4 or IPv6]
句法:
CREATE TABLE table_name( field_name1 inet, ... );
- 内部:
它用于表示 32 位有符号整数。它代表正数和负数。 int 的范围从 -(2^16) 到 +(2^16) [仅限整数]。24, 907, -9, ...
[表示 32 位有符号 int -(2^16) 到 +(2^16) [仅整数]]
句法:
CREATE TABLE table_name( field_name1 int, ... );
- 文本:
用于存储代表UTF8编码字符串的字符串类型。它通过使用 Cassandra 中的 1 位到 4 个 8 位类型以 Uni-code 对所有有效点进行编码。Ashish, rana, ...[Represents UTF8 encoded string]
句法:
CREATE TABLE table_name( field_name1 text, ... );
- 变量字符:
它被用于存储表示UTF8编码的字符串任意字符串。Ashish, rana, a$#34, A67dgg...
[任意字符串,代表UTF8编码的字符串]
句法:
CREATE TABLE table_name( field_name1 varchar, ... );
- 时间戳:
它用于表示时间戳,这对于存储时间戳的确切时间格式值非常有用。例如,如果我们想在 1995 年 12 月 15 日凌晨 4:00 存储,那么时间戳将是:1995-12-15 04:00 +0530
这里+0530代表印度的子午线。
[formats: yyyy-mm-dd HH:mm or yyyy-mm-dd HH:mm:ss]
句法:
CREATE TABLE table_name( field_name1 timestamp, ... );
- 变体:
它用于表示任意精度的整数,例如 124、24、1、5468 等。1, 24, 07, 897, 4568, etc.
句法:
CREATE TABLE table_name( field_name1 variant, ... );