![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как записать в таблицу БД текст объёмом свыше 2-х мегабайт?
dehkanin © (2014-02-19 20:15:00)1. Какой тип переменной выбрать для поля записи?
2. Если string то - что указать в поле "size ", чтобы записать текст объёмом свыше 2-х Мб?
Если другой тип - какой?
DVM (2014-02-19 22:23:00) [101]
> Rouse_ © (19.02.14 22:19) [26]
> Бэкапим - для того чтоб найти изменения в первом случае,
> нам нужно перечитать все 40 гигов - нес па?
Не, не так. Если страница была перезаписана, не важно такими же данными или другими, то это изменившаяся страница и подлежит бэкапу. Никто там ничего не сравнивает. Т.е если залили в базу новый файл вместо старого, то весь файл будет забекаплен, даже если он такой же как старый.
Но ведь при бэкапе файлов в файловой системе абсолютно такая же картина. Только там вместо страниц кластеры.
Rouse_ (2014-02-19 22:19:00) [102]Дим, ты не понял.
Дано: таблица с 1 записью с блобом в 40 гигов, и альтернатива - ссылка на данные.
Бэкапим - для того чтоб найти изменения в первом случае, нам нужно перечитать все 40 гигов - нес па?
DVM (2014-02-19 22:19:00) [103]
> Rouse_ © (19.02.14 22:15) [24]
В Firebird есть http://www.firebirdsql.org/manual/nbackup-backups.html#nbackup-backups-incrв Oracle есть http://docs.oracle.com/cd/B19306_01/backup.102/b14192/bkup004.htm
DVM (2014-02-19 22:17:00) [104]
> Rouse_ © (19.02.14 22:13) [22]
> Просто тупо время на поиск изменений?
Какой поиск, ты о чем? Данные записываются же не сплошным куском, а порциями - страницами. У каждой страницы есть множество флагов, в том числе связанные с необходимостью помещения в архив и т.д. Эти флаги при изменении страницы и меняются. Остается лишь выбрать страницы с изменениями.
Rouse_ (2014-02-19 22:15:00) [105]
> DVM © (19.02.14 22:14) [23]
> Опять ошибаешься.
С Ораклом не работал - могу и ошибаться.
DVM (2014-02-19 22:14:00) [106]
> Rouse_ © (19.02.14 22:09) [20]
> А, ну и до кучи - произвольный доступ к файлу по офсету
> (дозакачка).
Опять ошибаешься. Если пользоваться не дельфийскими компонентами доступа, а напрямую вызывая API сервера (хотя может какие компоненты и предоставляют такую возможность, но влюбом случае можно ее реализовать), то возможно произвольное позиционирование в блобе. И докачка по частям и закачка по частям. А если интегрировать свое расширение (dll ) в сервер, так вообще возможности безграничны. В Firebird это есть.
> Rouse_ © (19.02.14 22:09) [21]
> Ты сейчас про фаерберд?
Касательно бекапа в FB не знаю, не делал. В Оракле бекап точно есть Incremental backup.
Rouse_ (2014-02-19 22:13:00) [107]
> DVM © (19.02.14 22:08) [18]
>
> > Rouse_ © (19.02.14 22:05) [17]
>
> Ошибаешься. Бекап средствами СУБД сохраняет только изменения
> от предыдущей версии
Да хотя в принципе пофигу, ты представляешь себе затраты на сохранении изменений в ссылке на данные, и изменении 10 байт с 40 гигабайтном блобе?
Просто тупо время на поиск изменений?
Rouse_ (2014-02-19 22:09:00) [108]А, ну и до кучи - произвольный доступ к файлу по офсету (дозакачка).
Rouse_ (2014-02-19 22:09:00) [109]
> DVM © (19.02.14 22:08) [18]
> Ошибаешься. Бекап средствами СУБД сохраняет только изменения
> от предыдущей версии
Ты сейчас про фаерберд?
DVM (2014-02-19 22:08:00) [110]
> Rouse_ © (19.02.14 22:05) [17]
Ошибаешься. Бекап средствами СУБД сохраняет только изменения от предыдущей версии, т.е. скорость как минимум такая же как при бэкапе файлов с той же схемой архивирования. Плюс - не надо останавливать сервер СУБД, с файлами же может нарушится целостность, т.к. может получиться, что пока файл бекапился, его удалили из базы или заменили другим, и т.д.
Плохиш (2014-02-19 22:08:00) [111]
> Критерий выбора видимо был какой-то, в т.ч. удобство работы
> с BLOB, наверное, рассматривалось на первом месте, судя
> по задаче.
Судя по вопросам этих букав в критериях не встречалось ;-)
Rouse_ (2014-02-19 22:05:00) [112]
> Ты вот лучше назови реальные плюсы хранения файлов не в
> базе, а в виде файлов на диске.
Скорость бэкапа
DVM (2014-02-19 22:02:00) [113]
> Rouse_ © (19.02.14 21:57) [15]
> Угу, было такое заблуждение.
Нет тут никакого заблуждения.
> На сколько я помню все остановилось на скорости выборки
> данных при хранении в базе ста фильмов в HD формате.
Причем тут скорость? Кто заставляет выбирать в запросе и вытягивать на клиента BLOB поля содержащие большие объемы данных? Выбирать надо метаинформацию, а по ней тянуть на клиента файл.
Можно подумать копирование на клиента сто фильмов в HD формате быстрая операция.
Ты вот лучше назови реальные плюсы хранения файлов не в базе, а в виде файлов на диске. Я могу назвать недостатки, их много.
Rouse_ (2014-02-19 21:57:00) [114]
> Где то на сайте Firebird есть интервью с разработчиками
> Firebird, где они отвечая на вопрос, можно ли хранить файлы
> в субд, говорят - нужно хранить.
Угу, было такое заблуждение. На сколько я помню все остановилось на скорости выборки данных при хранении в базе ста фильмов в HD формате.
DVM (2014-02-19 21:47:00) [115]
> dehkanin (19.02.14 20:15)
> 1. Какой тип переменной выбрать для поля записи?
BLOB поле.
> brother © (19.02.14 21:13) [10]
с файлами будет огромное количество проблем, начиная от синхронизации изменений и заканчивая одновременным доступом к файлу. Профита никакого абсолютно. Т.е АБСОЛЮТНО никакого, одни недостатки.
СУБД абсолютно без разницы какого размер данные кладут в ее поле BLOB. Хоть 100 мегабайт, хоть терабайт. Это все будет также файл на диске, но по другому там размещенный. И в случае файла в БД и в случае файла на файловом сервере доступ и к тому и другому будет осуществлять с примерно одной и той же скоростью, ограниченной скоростью TCP соединения.
Где то на сайте Firebird есть интервью с разработчиками Firebird, где они отвечая на вопрос, можно ли хранить файлы в субд, говорят - нужно хранить.
Rouse_ (2014-02-19 21:42:00) [116]
> dehkanin (19.02.14 20:50) [4]
> Rouse: А Вы, "батенька",- острячок?
Видимо так и горжусь этим :)
ЗЫ: советую пересмотреть архитектуру хранения, хотя бы на ссылки...
Inovet (2014-02-19 21:22:00) [117]> [10] brother © (19.02.14 21:13)
Это дополнительные слои для задачи, а так всё средствами базы. Смотря что надо, мы не знаем.
Smile (2014-02-19 21:21:00) [118]Пост закончился на ...
Rouse_ © (19.02.14 20:42) [2]
Да Вы, батенька, эстет :)
brother (2014-02-19 21:13:00) [119]да и для нормального сис амина это не проблемма, не известно, кто эти фалй будет отображать или что-то сними делать )))))))
brother (2014-02-19 21:12:00) [120]> Файлы
папки ли -_-