【问题标题】:JDBC Large Fetch Size and Small Result Set performanceJDBC 大获取大小和小结果集性能
【发布时间】:2016-12-26 22:21:44
【问题描述】:

Oracle JDBC 默认提取大小为 10,我发现对于具有大量结果的特定查询使用 100 提取大小可以提高性能。

我想知道在连接器上将 fetch size 设置为 100 是否会对带有小结果集(即 1 行或几行)的查询的性能产生负面影响。

【问题讨论】:

  • 这可能没问题,但在不了解您的查询或设置的情况下,我认为最好的答案是“试试看”。看看会发生什么。

标签: java jdbc oracle11g oracle12c


【解决方案1】:

是的,默认 fetchSize 设置为 10 是正确的。 在调整此参数之前,我建议您先分析一段时间。分析后,您可以设置全局设置。大多数情况下,开发人员倾向于将其设置为100

我认为您可以为整个项目设置全局提取大小,然后,如果需要,您可以为一些应该更大/更小的个别查询覆盖它。

【讨论】:

  • 感谢您的评论。我们的团队正在讨论天气,我们应该在 10 点或 100 点建立基础,然后在每种情况下进行微调。
  • 这是最合理的解决方案。尝试分析,这将帮助您做出决定。
  • 似乎拥有 fetch size > 结果集并不会降低性能。
  • 大提取大小是可以的,并且可以为您提供更好的性能,但请不要忘记它需要更多内存用于缓冲区。这就是为什么我建议您进行简介:)
猜你喜欢
  • 1970-01-01
  • 2016-01-25
  • 2017-09-09
  • 2012-01-24
  • 2017-06-18
  • 2012-01-23
  • 1970-01-01
  • 2016-11-09
  • 2021-09-28
相关资源
最近更新 更多