gpt4 book ai didi

cassandra - 在使用 Datastax API(使用新的二进制协议(protocol))时在 Cassandra 中创建列族或表

转载 作者:行者123 更新时间:2023-12-03 07:57:28 24 4
gpt4 key购买 nike

我已经开始使用 Cassandra 数据库。我打算使用 Datastax API upsert/读入/从cassandra数据库。我对这个 Datastax API(它使用新的二进制协议(protocol))完全陌生,我也找不到很多文档,其中有一些适当的例子。

当我使用 Netflix 客户端(Astyanax 客户端)使用 Cassandra CLI 时,我创建了这样的列族 -

create column family profile
with key_validation_class = 'UTF8Type'
and comparator = 'UTF8Type'
and default_validation_class = 'UTF8Type'
and column_metadata = [
{column_name : crd, validation_class : 'DateType'}
{column_name : lmd, validation_class : 'DateType'}
{column_name : account, validation_class : 'UTF8Type'}
{column_name : advertising, validation_class : 'UTF8Type'}
{column_name : behavior, validation_class : 'UTF8Type'}
{column_name : info, validation_class : 'UTF8Type'}
];

现在我尝试使用 Datastax API 做同样的事情。因此,要开始使用 Datastax API,我是否需要以上述不同的方式创建列族?或者,每当我尝试使用 Datastax API 将数据插入 Cassandra 数据库时,上面的列系列都可以正常工作。

如果上述列族不起作用,那么-

首先,我创建了如下所示的 KEYSPACE -
CREATE KEYSPACE USERS WITH strategy_class = 'SimpleStrategy' AND strategy_options:replication_factor = '1';
现在我很困惑如何创建表?我不确定哪种方法是正确的?

我应该这样创作吗?
CREATE TABLE profile (
id varchar,
account varchar,
advertising varchar,
behavior varchar,
info varchar,
PRIMARY KEY (id)
);

还是我应该这样创作?
CREATE COLUMN FAMILY profile (
id varchar,
account varchar,
advertising varchar,
behavior varchar,
info varchar,
PRIMARY KEY (id)
);

以及如何添加-
crd as DateType
lmd as DateType

在使用 Datastax API 时在上面的表或列族中?

任何帮助将不胜感激。

最佳答案

是否使用关键字列家族 ,两者相同(同义词)。我猜是关键字与 CQL3 一起引入。所以你可以在你的陈述中使用任何一个。

第二个问题,添加DateType,你应该使用时间戳。

CREATE COLUMNFAMILY sample (rowkey text, ts timestamp, PRIMARY KEY(rowkey));

INSERT INTO sample (rowkey, ts ) VALUES ( '1','1366354711797');
// ts value is basically the System.currentTimeMillis(), I mean a long value

关于cassandra - 在使用 Datastax API(使用新的二进制协议(protocol))时在 Cassandra 中创建列族或表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16096009/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com