gpt4 book ai didi

indexing - 扫描存储桶中某些文档时出现 Couchbase 性能问题 - 出现超时异常

转载 作者:行者123 更新时间:2023-12-02 19:59:42 27 4
gpt4 key购买 nike

我们有一个Couchbase服务器版本Community Edition 5.1.1 build 5723

在我们的汽车存储桶中,我们有汽车制造商及其制造的汽车

两者之间的联系是 Car MakeId,我们将其保存为 Car 文档中的另一个字段(就像 MySQL 表中的外键)。

该存储桶只有 330,000 个文档。

查询需要花费大量时间 - 非常简单的查询需要数十秒,例如

select * from cars where model="Camry"  <-- we expect to have about 50,000 results for that

我们通过两种方式执行查询:

  1. Couchbase 的 UI
  2. 一个 Spring boot 应用,在 7.5 秒后不断收到 TimeOutException

我们认为问题是存储桶缺少索引。

所以我们添加了一个索引:

CREATE INDEX cars_idx ON cars(makeName, modelName, makeId, _class) USING GSI;

运行时我们可以看到该索引

SELECT * FROM system:indexes

我们在这里缺少什么?对于 NoSQL 数据库中的此类查询来说,这些次数是否合理?

最佳答案

尝试

CREATE INDEX model_idx ON cars(model);

您的索引未涵盖模型字段。

你应该有 spring data couchbase“_class”属性的索引

CREATE INDEX `type_idx` ON `cars`(`_class`)

关于indexing - 扫描存储桶中某些文档时出现 Couchbase 性能问题 - 出现超时异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53257523/

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