适用于BLOB还是不适用于BLOB:数据库还是文件系统中的大型对象存储?
To BLOB or Not To BLOB: Large Object Storage in a Database or a Filesystem?
摘要:
应用程序设计人员经常面临这样一个问题:是将大型对象存储在文件系统中,还是存储在数据库中。通常,这一决定是为了简化应用程序设计。有时也使用性能测量。本文着眼于碎片化的问题-一个操作问题,可以影响性能和/或部署的系统长期的可维护性。根据常识,小于256KB的对象最好存储在数据库中,而大于1M的对象最好存储在文件系统中。在256KB和1MB之间,读写比率和对象覆盖或替换的速率是重要因素。我们使用"存储年龄"或对象重写次数的概念作为标准化挂钟时间的方法。存储年龄允许我们的结果或类似的结果应用于许多读写比率和对象替换率。
英文摘要:
Application designers often face the question of whether to store large objects in a filesystem or in a database. Often this decision is made for application design simplicity. Sometimes, performance measurements are also used. This paper looks at the question of fragmentation - one of the operational issues that can affect the performance and/or manageability of the system as deployed long term. As expected from the common wisdom, objects smaller than 256KB are best stored in a database while objects larger than 1M are best stored in the filesystem. Between 256KB and 1MB, the read:write ratio and rate of object overwrite or replacement are important factors. We used the notion of "storage age" or number of object overwrites as way of normalizing wall clock time. Storage age allows our results or similar such results to be applied across a number of read:write ratios and object replacement rates.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。