我有以下要求:
不需要词干,排名或其他处理。就像这样简单:
请给我collection1中的所有文档,其中field1包含1或2,field2包含99和100,field3包含1000到1003之间的值...将其加入到collection2其中...
在ArangoDB中是否有可能(我假设使用ArangoSearch视图)?如果是这样,谁能给我正确的方向(表现)?
答案 0 :(得分:0)
虽然性能确实取决于数据的数量和类型,但假设性能无法按预期的那样选择数据,我会尝试:
每个字段1和2的哈希索引
字段3上的跳过列表索引
由于您提到数据稀疏,所以我将尝试在适当的索引上打开稀疏选项。这将导致Arango仅对索引(或字段集)上的字段具有非空值的数据编制索引。此外,如果非null数据是唯一的,我将进一步尝试稀疏的唯一索引。
最后,您的里程将取决于我之前提到的数据,因此将是可补救的。无论哪种方式,都可以找到关于索引的Arango文档here
哦,在忘记之前,与SQL不同,语句在AQL语句中出现的顺序确实有所不同,因此请尝试尽早过滤尽可能多的数据。
打猎愉快!