C#大数据备份策略释放数据库
我们的应用程序需要大量的数据,其中大部分被称为事务,大部分是员工的打卡和打卡信息,大部分被处理并存储在另一个表中。随着时间的推移,这些数据可能会增长。我正在考虑将数据备份到文本文件,并从这些文本文件中导出数据(如果有的话),导出将清除数据库中的数据。现在数据是可以存档的文本文件等…这是我看到的其他软件的想法…你的建议如何 几点:C#大数据备份策略释放数据库,c#,database,C#,Database,我们的应用程序需要大量的数据,其中大部分被称为事务,大部分是员工的打卡和打卡信息,大部分被处理并存储在另一个表中。随着时间的推移,这些数据可能会增长。我正在考虑将数据备份到文本文件,并从这些文本文件中导出数据(如果有的话),导出将清除数据库中的数据。现在数据是可以存档的文本文件等…这是我看到的其他软件的想法…你的建议如何 几点: 我会把数据库放在一边,因为它可能有一个dba,也可能没有dba,而且可能有很多解决方案涉及到数据库。当我们在客户处部署应用程序时,我最不想和dba谈一谈,卷入那些讨厌
- 我会把数据库放在一边,因为它可能有一个dba,也可能没有dba,而且可能有很多解决方案涉及到数据库。当我们在客户处部署应用程序时,我最不想和dba谈一谈,卷入那些讨厌的事情中……所以我可以在一年后告诉他们“嘿,数据库太大了”因此,现在只需将数据转储到文本或xml文件中,并清除表即是解决方案。报告从另一个主表中运行..我想从长远来看,就像4年后一样,我可能会有一个巨大的数据库,其中表中有大量事务,因为员工每班X个时钟在Blaaahh中增长X。。。因此,如果他们可以每月或任何时候跟踪转储到文本文件。。。。i、 e
这对你来说可能是一个可行的策略。这可能是我最喜欢的SQL2008新功能。我认为这取决于您需要如何访问旧数据
如果只需要对旧数据运行定期报告,可以将数据移动到单独的存档数据库中。基本上,只需创建实时生产数据库的副本。在副本中,只需删除要保留在live系统中的最新实体。在实时生产数据库中,删除将保留在存档数据库中的数据。实际上,您需要定期修剪数据库,并将旧数据移动到归档数据库中。我曾在一家供应商的时间写作应用程序中使用过这种技术,该应用程序每隔几年就会慢到爬行,因为它不是为保存存储在其中的数据量而设计的。幸运的是,我们可以将应用程序指向运行报告所需的任何数据库。我将根据您环境的具体情况,尝试将我的答案分为两种
另一种选择是引入合同DBA来帮助解决问题。您使用的是什么类型的数据库。什么操作系统?这是很重要的信息。另外,您是否有DBA或必须担任DBA的开发人员?根据您对前面评论的回答:您是在谈论桌面软件中的嵌入式数据库还是RDBMS(如SQL Server、Oracle、MySQL等)。此外,这是您销售的产品,还是仅供您使用的内部应用程序?WINDOWS、数据库可以是任何类型,主要是oracle或sql server