存档SQL数据并在需要时在Web应用程序中显示的最佳方法

时间:2011-05-11 11:11:43

标签: sql-server archive

我有大约10个包含数百万行的表。现在我想归档40%的数据,原因是尺寸和性能问题。

归档旧数据并让Web应用程序运行的最佳方法是什么?如果我需要在现有的情况下显示旧数据,那么在不久的将来。

提前致谢。

3 个答案:

答案 0 :(得分:1)

对于任何情况都没有单一的解决方案。这在很大程度上取决于您的数据结构和应用程序要大多数一般情况似乎如下:

  1. 如果您的应用程序无法重新设计并且您的所有数据都需要即时访问,则需要使用功能更强大的硬件/软件解决方案。
  2. 如果您的应用程序无法重新设计,但您的某些数据可能会被视为过时,因为相对而言,您可以分割数据并配置两个应用程序来访问不同的数据。
  3. 如果您的应用程序无法重新设计,但您的某些数据可能被视为不敏感且可以最小化(合并,打包等),您可以执行一些数据转换以及将完整数据保存在另一个地方以实现特殊请求。
  4. 如果可以重新设计您的应用程序,有很多方法可以解决这个问题。一般来说,您将实现某种存档子系统,一般而言,这是一个复杂的问题,特别是如果您的数据不仅及时更改,而且数据结构也发生了变化。
  5. 如果可以重新设计您的应用程序,您可以使用新的支持表,索引和其他数据库对象以及algorythms来优化数据结构。

答案 1 :(得分:0)

您可以将旧数据移动到另一个表(相同的数据库或其他数据库)。但你应该看看缺少的索引。

答案 2 :(得分:0)

如果可能,创建存档数据库维护不同的存档服务器,因为这些数据不是必需的,但仍需要存档以备将来使用,因此这减少了服务器和空间的负载。 将所有表的数据移动到该位置。稍后您可以通过多种方式检索: 改变应用的路径 或使用存档表更新实时表