卡桑德拉中的读取错误一些查询



我的表格电影有一列,其中包含该电影类型的列表。

我试图在数据上放置一个索引。

CREATE INDEX ON movies (genres);

当我尝试列出纪录片或音乐剧类型的所有电影时,我得到了结果。

Select * from movies where genres contains 'Documentary';

但是试图列出所有其他类型的电影,如惊悚片、喜剧片或犯罪片,我遇到了一个错误:

Select * from movies where genres contains 'Thriller';
ReadFailure: Error from server: code=1300 [Replica(s) failed to execute read] message="Operation failed - received 0 responses and 1 failures" info={'failures': 1, 'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'}

这怎么可能?

我相信您需要在 ON 语句之前列出您的伪列名称。

CREATE INDEX new_genres ON movies (genres); 

如果您只是想查看某种类型,您可以:

SELECT genres 
FROM movies
WHERE genres LIKE 'DOCUMENTARY' 
and genres LIKE 'MUSICAL';

这将列出与它们所属的所有电影相对应的指定流派。

我希望这有帮助?

如果超过tombstone_failure_threshold,您可能会遇到此错误。

您可以尝试增加 cassandra.yaml 中的tombstone_failure_threshold或 通过运行 NodeTool 修复和压缩来清理逻辑删除。

最新更新