Couchbase 4“按订单”性能稳定
重复: 正如问题标题所示,使用Couchbase 4 N1QL ORDER BY子句,我面临着巨大的响应延迟,一次调用的响应延迟为13秒。如果我不使用ORDERBY子句,一切都很好 我的主要索引是Couchbase 4“按订单”性能稳定,couchbase,n1ql,Couchbase,N1ql,重复: 正如问题标题所示,使用Couchbase 4 N1QL ORDER BY子句,我面临着巨大的响应延迟,一次调用的响应延迟为13秒。如果我不使用ORDERBY子句,一切都很好 我的主要索引是 Definition: CREATE PRIMARY INDEX `#primary` ON `default` USING GSI 二级指标为 Definition: CREATE INDEX `index_location_name` ON `default`(`name`) USING GSI
Definition: CREATE PRIMARY INDEX `#primary` ON `default` USING GSI
二级指标为
Definition: CREATE INDEX `index_location_name` ON `default`(`name`) USING GSI
N1QL查询
req.params.filter可以是位置文档中的任意键
从默认值中选择_id作为id,其中type='location'ORDER BY+
req.params.filter+req.query.DESCING?'DESC':+LIMIT+
限制+偏移+跳过
我的桶中的位置文档是
{
"_id": "location::370794",
"name": "Kenai Riverside Fishing",
"avgRating": 0,
"city": "Cooper Landing",
"state": "Alaska",
"country": "USA",
"zipCode": "99572",
"created": "2013-07-10T17:30:00.000Z",
"lastModified": "2015-02-13T12:34:36.923Z",
"type": "location",
}
任何人都能知道为什么按条款订货会造成如此多的延误 我相信couchbase不是用来处理任何字段都可以排序的查询的。由于排序在CB中是一项昂贵的操作,因此始终建议根据排序字段创建索引。此外,如果索引是按升序构建的,那么它不能用于降序,反之亦然。如果可行,使用CB的最佳选择是使用asc和desc顺序创建所有可能的索引
<>我也建议你考虑一下弹性搜索是否更适合你的动态搜索用例。你可以在结果的末尾发布度量,包括SoRtCube。另外,请张贴解释计划。我不得不认为WHERE子句中没有类型索引,因此查询速度会非常慢。对于执行较差的订单,这取决于运行查询服务的节点上的RAM和CPU。所以,检查这些资源。还有,你为什么要测试beta版?至少在4.0上进行测试。如果您正在考虑购买企业版,4.1有一些社区版所没有的巨大性能改进。