我试图将java.util.UUID保存到timeuuid类型的Cassandra列。例如,这是一个默认的spring-data-cassandra映射:。UUID的值是由java.util.UUID#randomUUID()生成的,我得到一个异常:"com.datastax.driver.core.exceptions.InvalidQueryException: Invalid version for TimeUUID type"
在学习代码揭示了原因:
@Override
public void validate(byte[] bytes)
{
我有卡桑德拉模型
import uuid
from cassandra.cqlengine import columns
from cassandra.cqlengine.models import Model
class MyModel(Model):
...
...
created_at = columns.TimeUUID(primary_key=True,
clustering_order='DESC',
default=uuid.uuid1)
我有代码
from uuid import uuid4
from uuid import uuid1
from cassandra.cqlengine import columns, connection
from cassandra.cqlengine.models import Model
from cassandra.cqlengine.management import sync_table
class BaseModel(Model):
__abstract__ = True
id = columns.UUID(primary_key=True, defaul
我在cassandra表中有一个列,其中包含timeuuid值。我希望在搜索查询中排除具有timeuuid值的行。如果我应用'!=',我会得到以下错误
查询:
select * from X where id != '0651de16-fa62-11eb-8318-dc4a3e6d5697 ' allow filtering ;
错误:
InvalidRequest: Error from server: code=2200 [Invalid query] message="Unsupported "!=" relation: id !=
我最近在卡桑德拉做了一些不同设计的性能测试。我目前正在使用cassandra作为写作密集型项目。但是,我将使用select语句将读密集型部分添加到导出数据中。
我用下表做时间序列。
CREATE TABLE events (
date text,
n int, // it could be 1,2,3
id timeuuid,
PRIMARY KEY ((date, n), id)
);
我使用date|n作为分区密钥。为了提高读取性能,我试图从宽行的概念中获得优势。文件中指出;
如果分区键是相同的,则通过扩展分区键的行将它们插入到同一个物理节点。
因此,我使用n来均匀地分配行
我正在尝试将数据存储到cassandra中,并按时间排序。使用TimeUUIDType作为密钥有问题。
我用phpcassa得到以下错误...
Fatal error: Uncaught exception 'cassandra_InvalidRequestException'
with message 'TimeUUID should be 16 or 0 bytes (6)'
这在调用insert方法时发生...
$pool = new ConnectionPool("Keyspace1", array("localhost:9