Может ли локатор BFILE указывать на каталог другого файла? - PullRequest
0 голосов
/ 03 декабря 2009

У меня есть веб-приложение на Java, которое должно загружать файлы, и мы хотим хранить эти файлы в файловой системе, а не в базе данных. База данных будет хранить только метаданные документа.

Вопрос в том, сохранять ли путь как строку в Oracle или как локатор BFILE? Может ли локатор BFILE указывать на местоположение в другой файловой системе? Если нам нужно сохранить файл в файлере Oracle, то мы можем просто сохранить его как BLOB.

1 Ответ

2 голосов
/ 03 декабря 2009

Локатор BFILE должен быть каталогом, который виден с сервера Oracle и на котором пользователь ОС Oracle имеет права на чтение и запись. Таким образом, хотя теоретически это может быть удаленный сервер, администратор этого подхода получит довольно быстро и довольно быстро. С практической точки зрения имеет смысл иметь каталог BFILE на сервере базы данных.

Так что вы можете хранить его как BLOB? Хорошо, если файл будет доступен только через базу данных, тогда да, определенно. Использование типа данных BLOB имеет преимущество транзакционной поддержки. В связи с этим упрощается резервное копирование и восстановление, поскольку содержимое файла гарантированно синхронизируется с базой данных. Это не обязательно верно для BFILE и почти наверняка не верно для BFILE, которые находятся на другом физическом сервере.

...