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