从大表中一次获取的最佳行大小

Mov*_*ast 5 sql database sybase query-optimization

我有一个非常大的表包含大约2000万行.我必须根据一些过滤条件从该表中获取大约400万行.过滤条件中的所有列都包含在某些索引中,并且表统计信息是最新的.

我被建议不要一次性加载所有行,而是使用批量大小,例如一次说80000行,与一次加载所有行相比,这将更快.

你能说出这个想法是否有意义吗?

如果有意义,那么一次加载的最佳行大小是多少.

bak*_*048 1

  1. 它可以比单个sql快得多。
  2. 使用 PK 分割数据。
  3. 批量大小。这取决于生产线的长度和处理时间。从 10 000 开始。
  4. 如果可能的话,线程作业。