gpt4 book ai didi

java - SQL Server - 如何确保缓存查询结果?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:00:53 27 4
gpt4 key购买 nike

我有一个应用程序,它在登录后的第一页会向用户显示大量数据。对数据库的查询需要很长时间——比方说 10 秒。数据库在 SQL Server 2008 中,查询运行构造为 Java 中的准备语句。不过,需要显示的数据通常每天只会更改一次。所以 - 如果我可以缓存此结果并更快地显示,那将是理想的。

但是,我不太确定我需要做什么来减少这 10 秒的等待 - 每次我加载页面时都会发生相同的延迟。我需要做些什么来确保 SQL Server 将结果缓存到查询中吗?现在第二次加载似乎并没有更快 - 我应该从哪里开始探索?

非常感谢所有帮助!

最佳答案

你应该看看indexed views.

它们允许您在索引中存储优化器可以间接或直接访问的查询结果(以 View 的形式)(即它“知道”它拥有数据并将提取它以用于查询之外的查询那个观点)。

链接中列出了一些限制条件。

它们是唯一真正可行的方式(除了创建和管理结果表)来缓存复杂的查询结果,如聚合。

我猜你的查询很复杂和/或包含聚合字段和分组,这将总是需要处理开销,即使数据页已经缓存在内存中也是如此。

关于java - SQL Server - 如何确保缓存查询结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7032024/

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