Рекомендуемое место для хранения документов - в базе данных или в другом месте? - PullRequest
18 голосов
/ 04 февраля 2009

Фон:

У нас есть собственная система хранения документов, которая была внедрена давно. По какой-то причине было выбрано использование базы данных в качестве механизма хранения документов.

У меня такой вопрос:

Каков наилучший способ хранения документов? Какие есть альтернативы? Каковы плюсы и минусы? Ответы не обязательно должны зависеть от технологии или платформы, это скорее общий вопрос передового опыта.

Мои мысли:

Базы данных не предназначены для хранения документов. Файловые системы или сторонние системы управления документами могут быть лучше использованы. Хранение документов в базах данных дорого. Операции идут медленно. Это логические предположения? Возможно, это лучше, но, на мой взгляд, у нас есть лучшие альтернативы. Могут ли оракулы BFILE (ссылки на документы на NAS или SAN) быть лучше, чем BLOB / CLOB?

подробности:

  • Документы бывают разных типов (pdf, word, xml)
  • Код среднего уровня написан на .net 2.0 / c #
  • Документы хранятся в базе данных Oracle 10g в BLOB со сжатием (NAS Storage)
  • Размер файла rage
  • Количество документов резко увеличивается и не имеет признаков замедления
  • Вставок обычно приходится на сотню в час во время пика
  • Восстановление обычно в тысячах в час во время пика
  • Доступно хранилище NAS и SAN

ОБНОВЛЕНИЕ (из вопросов ниже):

  • мой фон - разработка
  • есть связанные метаданные о файлах, хранящихся рядом с файлом в базе данных

Ответы [ 13 ]

0 голосов
/ 04 февраля 2009

Единственное преимущество, которое я вижу при хранении документов в базе данных, - это простота перемещения этих документов в другую среду. Кроме того, я бы не стал делать это по всем упомянутым выше причинам.

0 голосов
/ 04 февраля 2009

Я всегда храню основные данные и путь к файлу для документов в базе данных, но никогда сам документ Редко весь документ должен быть в базе данных.

Это обеспечивает большую гибкость в использовании этих документов. Например, хотите использовать многоуровневое резервное хранилище и механизмы дедупликации? Попробуйте это в Oracle BLOB.

0 голосов
/ 04 февраля 2009

Храните ваши документы в виде файлов, таких как .doc, если вы хотите иметь доступ к файлам, редактировать и сохранять их.

Храните ваши документы в виде файлов, таких как .pdf или .tiff, если вам нужны фактические исторические копии, которые можно восстановить и воспроизвести.

Храните всю информацию о ваших файлах (например, даты, авторов, местоположение) в вашей базе данных.

...