

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用查找缓存
<a name="feature-overview-lookup-cache-using"></a>

查找缓存仅在 `R5d` 实例类型上可用，默认情况下会自动启用。Neptune `R5d` 实例具有与`R5`实例相同的规格，外加高达 1.8 TB 的本地固态硬盘 NVMe存储。查找缓存特定于实例，受益的工作负载可以专门定向到 Neptune 集群中的 `R5d` 实例，而其它工作负载可以定向到 `R5` 或其它实例类型。

要在 Neptune 实例上使用查找缓存，只需将该实例升级为 `R5d` 实例类型即可。当您这样做时，Neptune 会自动将 [neptune\_lookup\_cache](parameters.md#parameters-db-cluster-parameters-neptune_lookup_cache) 数据库集群参数设置为 `1`（已启用），并在该特定实例上创建查找缓存。然后，您可以使用 [实例状态](access-graph-status.md) API 确认缓存已启用。

同样，要在给定实例上禁用查找缓存，请将该实例从 `R5d` 实例类型缩减到等效的 `R5` 实例类型。

启动 `R5d` 实例时，查找缓存处于启用状态并处于冷启动模式，这意味着它是空的。Neptune 在处理查询时首先在查找缓存中检查属性值或 RDF 文本，如果它们尚不存在，则添加它们。这会逐渐预热缓存。

当您将需要属性值或 RDF 文本查找的读取查询定向到 R5d *读取器*实例时，在缓存预热时读取性能会略有下降。但是，当缓存预热时，读取性能会显著提高，而且您还可能会看到与查询访问缓存而不是集群存储相关 I/O 的成本下降。内存利用率也有所提高。

如果您的*写入器*实例是 `R5d`，则它会在每次写入操作时自动预热其查找缓存。这种方法确实会稍微增加写入查询的延迟，但可以更高效地预热查找缓存。然后，如果您将需要属性值或 RDF 文本查找的读取查询定向到写入器实例，则可以立即开始获得改进的读取性能，因为已在此处缓存了这些值。

此外，如果您在 `R5d` 写入器实例上运行批量加载程序，则可能会注意到由于缓存的原因，其性能略有下降。

由于查找缓存特定于每个节点，因此主机替换会将缓存重置为冷启动。

通过将 [neptune\_lookup\_cache](parameters.md#parameters-db-cluster-parameters-neptune_lookup_cache) 数据库集群参数设置为 `0`（已禁用），您可以暂时禁用数据库集群中所有实例上的查找缓存。但是，一般而言，通过将特定实例从 `R5d` 缩减到 `R5` 实例类型来禁用这些实例上的缓存更有意义。