标签: cql3

如何在cassandra CQL 3命令行中自动生成uuid

刚学习cassandra,有没有办法使用CQL插入UUID,即

create table stuff (uid uuid primary key, name varchar);
insert into stuff (name) values('my name'); // fails
insert into stuff (uid, name) values(1, 'my name'); // fails
Run Code Online (Sandbox Code Playgroud)

你能做点什么吗?

insert into stuff (uid, name) values(nextuid(), 'my name');
Run Code Online (Sandbox Code Playgroud)

cql cassandra cql3

46
推荐指数
4
解决办法
6万
查看次数

Cassandra中UPDATE和INSERT之间的区别?

是什么区别UPDATEINSERT对Cassandra的执行CQL什么时候?

它看起来似乎没有区别,但现在文档说它INSERT不支持计数器UPDATE.

是否有"首选"方法?或者是否有人应该使用另一个?

非常感谢!

cql cassandra cql3

43
推荐指数
2
解决办法
2万
查看次数

Cassandra UUID与TimeUUID的优点和缺点

鉴于TimeUUID方便地允许您now()在CQL中使用,是否有任何理由您不会继续使用TimeUUID而不是普通的旧UUID?

uuid cql cassandra cql3 timeuuid

43
推荐指数
2
解决办法
4万
查看次数

二级索引如何在Cassandra中运行?

假设我有一个列族:

CREATE TABLE update_audit (
  scopeid bigint,
  formid bigint,
  time timestamp,
  record_link_id bigint,
  ipaddress text,
  user_zuid bigint,
  value text,
  PRIMARY KEY ((scopeid, formid), time)
  ) WITH CLUSTERING ORDER BY (time DESC)
Run Code Online (Sandbox Code Playgroud)

使用两个二级索引,其中record_link_id是高基数列:

CREATE INDEX update_audit_id_idx ON update_audit (record_link_id);

CREATE INDEX update_audit_user_zuid_idx ON update_audit (user_zuid);
Run Code Online (Sandbox Code Playgroud)

根据我的知识,Cassandra将创建两个隐藏列系列,如下所示:

CREATE TABLE update_audit_id_idx(
    record_link_id bigint,
    scopeid bigint,
    formid bigint,
    time timestamp
    PRIMARY KEY ((record_link_id), scopeid, formid, time)
);

CREATE TABLE update_audit_user_zuid_idx(
    user_zuid bigint,
    scopeid bigint,
    formid bigint,
    time timestamp
    PRIMARY KEY ((user_zuid), scopeid, …
Run Code Online (Sandbox Code Playgroud)

cql cassandra cql3 cassandra-2.0

39
推荐指数
1
解决办法
2万
查看次数

Cassandra(CQL)中的结果分页

我想知道如何使用Cassandra实现分页.

我们说我有一个博客.该博客每页最多列出10个帖子.要访问下一篇文章,用户必须单击分页菜单才能访问第2页(帖子11-20),第3页(帖子21-30)等.

在MySQL下使用SQL,我可以执行以下操作:

SELECT * FROM posts LIMIT 20,10;
Run Code Online (Sandbox Code Playgroud)

LIMIT的第一个参数从结果集的开头偏移,第二个参数是要获取的行数.上面的示例从第20行开始返回10行.

如何在CQL中实现相同的效果?

我在Google上找到了一些解决方案,但所有这些解决方案都需要"以前查询的最后结果".它适用于将"下一个"按钮分页到另一个10结果集,但如果我想从第1页跳到第5页怎么办?

cql cassandra datastax-enterprise cql3

32
推荐指数
3
解决办法
4万
查看次数

在cassandra CQL 3.0中更改复合主键

我正处于需要更改复合主键的情况,如下所示:

旧主键:(id,source,attribute_name,updated_at);

我想要的新主键:(source,id,attribute_name,updated_at);

我发出了以下(mysql like)命令:

ALTER TABLE general_trend_table 
DROP PRIMARY KEY, 
ADD PRIMARY KEY(source, id, attribute_name, updated_at);
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

错误请求:第1:38行输入'PRIMARY'没有可行的选择

任何想法如何解决这个问题?更具体地说我想知道有没有办法改变cassandra中的主键?

alter cassandra composite-primary-key cql3 cqlsh

28
推荐指数
1
解决办法
3万
查看次数

Cassandra:生成一个唯一的ID?

我正在研究分布式数据库.我试图生成一个唯一的ID将作为列族主键.

我阅读了一些关于使用Java进行此操作的文章,UUID但似乎存在碰撞的可能性(即使它非常低).

我想知道是否有办法根据时间生成一个唯一的ID?

uuid cql cassandra cql3

25
推荐指数
3
解决办法
3万
查看次数

如何在键空间中列出列族?

如何使用CQL 3获取Cassandra中键空间中所有列族的列表?

cassandra cql3 cqlsh cassandra-2.0

22
推荐指数
3
解决办法
3万
查看次数

如何在Cassandra CQL3中重命名表

我正在尝试重命名通过CQLSH创建的表.例如,将表"AAA"重命名为"BBB".找不到任何命令.有任何想法吗?

使用[cqlsh 3.1.6 | Cassandra 1.2.8 | CQL规范3.0.0 | 节俭协议19.36.0]

cassandra cql3

21
推荐指数
1
解决办法
2万
查看次数

MAX(),DISTINCT和Cassandra的分组

我正在尝试重新构建一个SQL数据库Cassandra,以便我可以找到与SQL查询等效的Cassandra.我使用CQL 3和Cassandra v1.2.我在cassandra中对db设计进行了建模,以便它支持子句和非规范化表的顺序以支持连接操作.但是,当谈到DISTINCT,SUM()和GROUPBY等价时,我在海上

SELECT a1,MAX(b1) FROM demo1 group by a1.
SELECT DISTINCT (a2) FROM demo2 where b2='sea'
SELECT sum(a3), sum(b3) from demo3 where c3='water' and d3='ocean'
Run Code Online (Sandbox Code Playgroud)

在过去的几天里,这就像我的工作一样.在Cassandra中有没有办法,我可以建模db模式来支持这类查询?我无法想象卡桑德拉的任何方式.如何使用Cassandra实现此类查询?

我读到Cassandra上的hive层可能会使这些查询起作用.我只是想知道这是否是在Cassandra中支持此类查询的唯一方法..?请建议任何其他可能的方法..

cql cassandra nosql nosql-aggregation cql3

18
推荐指数
4
解决办法
5万
查看次数