当我更新少量的二进制或文本文件时,我通常会用新的内容覆盖整个文件,即使只是更改了文件的一小部分。我这样做是因为覆盖文件内容比跟踪文件中每个小数据的位置要容易得多。
我认为当文件大小和更新频率不那么大时这不是问题,但是在处理大文件和较短更新时间时我应该选择另一种文件更新技术。
我想知道何时应该开始担心我更新文件的方式。在此整个文件覆盖更新和更精细,更有效的技术之间,我应该使用什么标准来决定?
答案 0 :(得分:1)
决定使用哪种技术保存文件的主要标准是与之相关的成本。
您的更改是在本地完成还是必须通过网络传输? 对于本地设置,将文件保存到磁盘所需的时间是主要成本,也是基准测试的主要标准。
对于远程更改,您还应该考虑传输所需的时间和带宽消耗(可以使用增量更改,但发送方和接收方都需要计算成本,并且在某些情况下可能会大于原始文件)
此问题没有神奇的配方。最好的方法是使用实际的测试方案对不同的解决方案进行基准测试。
另一件事:您可以控制已编辑的文件吗?如果使用它们来存储应用程序的内部模型并且经常更改它们,则更好的方法是更改数据模型(使用数据库/在多个文件之间划分责任)。