嬴图提供多种策略以优化查询性能。
索引 索引能够加速属性查找过程,原理为在磁盘中创建索引树,从而减少数据检索和过滤所需的扫描量。嬴图同样支持全文索引,通过对文本分词并构建反向索引,实现关键词的精准匹配和模糊匹配。详情请见索引和全文索引。
缓存 缓存将经常访问的数据存储在内存中,减少磁盘访问并提高查询响应速度。在嬴图系统里,缓存适用于多种数据类型,包括图拓扑和完成LTE的属性。详情请见LTE和缓存。
嬴图中的索引和缓存会自动更新,确保其能够反映最新数据情况。这有助于保持最优查询性能,无需手动更新。
索引 vs. LTE
可以为属性创建索引或对属性进行LTE以提高查询性能。选择加速策略时,需根据场景考虑其适用性:
场景 |
索引 | LTE |
---|---|---|
在find().nodes() 和find().edges() 查询中过滤点和边 |
✓ | ✕ |
过滤起点 | ✓ | ✕ |
在其他地方过滤点和边 | ✕ | ✓ |
您可根据需要将索引和LTE策略同时应用于某些属性。但需注意合理使用shard服务器上的磁盘和内存空间,避免过度消耗资源。