背景:
我们有一个很久以前实施的内部文件存储系统。无论出于何种原因,都选择了使用数据库作为文档的存储机制。
我的问题是这样的:
存储文档的最佳做法是什么?有哪些替代方案?优缺点都有什么? 答案不必是特定于技术或平台的,它更多的是一般的最佳实践问题。
我的想法:
数据库不适用于文档存储。文件系统或第 3 方文档管理系统可能更有用。数据库中的文档存储很昂贵。操作很慢。这些是逻辑假设吗?也许这是最好的,但在我看来,我们有更好的选择。oracle BFILE(指向 NAS 或 SAN 上的文档的链接)是否比 BLOB / CLOB 更好?
细节:
- 文档有多种类型(pdf、word、xml)
- 中间层代码是用 .net 2.0 / c# 编写的
- 文档以 BLOB 格式存储在 Oracle 10g 数据库中并进行压缩(NAS 存储)
- 文件大小风靡一时
- 文档数量正在急剧增长,并且没有放缓的迹象
- 在高峰期,插入通常是每小时数百次
- 高峰期的检索速度通常为每小时数千
- NAS存储和SAN存储可用
更新(来自以下问题):
- 我的背景是发展
- 有关于存储在数据库中文件旁边的文件的相关元数据