gpt4 book ai didi

sql - 有没有一种方法可以防止重复调用 SQL 查询并进行缓存并加快速度?

转载 作者:行者123 更新时间:2023-12-02 20:43:00 24 4
gpt4 key购买 nike

我需要在大约 1-2 秒内运行多个查询。我一直在努力优化它们,但第一次调用它们中的任何一个都需要约 20 秒,而所有后续调用则需要约 1 秒。这使得无法判断我所做的任何更改是否加快了查询速度,因为它总是在大约 1 秒内运行。我对 SQL 不太熟悉,但从我所了解到的情况来看,似乎有东西在缓存。我正在尝试找出如何防止这种情况的发生,但似乎没有任何效果。根据我在 Google 上的发现,人们一直在建议

DBCC FREEPROCCACHE

OPTION(recompile)

但这两个似乎都不起作用。每个查询仍然在约 1 秒内运行,而第一次则需要约 20 秒。我只是想确保我所做的更改正在带来改进,而不是改进来自缓存。还有其他技巧可以做到这一点吗?

最佳答案

DBCC FREEPROCCACHE 用于计划缓存(查询编译),这可能会在查询中带来一点好处,而不是页缓冲区数据缓存,后者对 IO 来说是一个很大的改进。为了保持一致,您需要在数据库中完成检查点之后清除缓冲区缓存,

CHECKPOINT
DBCC DROPCLEANBUFFERS

关于sql - 有没有一种方法可以防止重复调用 SQL 查询并进行缓存并加快速度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19795429/

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