|
|
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
Такая ситуация, надо загружать большие файлы, по 300-500Мб в базу (Hibernate). Не спрашивайте зачем (я знаю что это не лучший вариант), это не мое решение и поменять тут ничего нельзя. Хотя бы по техническим причинам. Используются новомодные облака и доступа к файловой системе просто нет. Опять же, очень прошу, не надо рассказывать про то какие облака плохие или хорошие, не о них речь. Есть Tomcat и PostgreSQL. Суть в чем, сейчас при загрузке получается так, что файл сначала полностью закачивается в память и только потом сейвится. В результате, через какое-то время, томкат отъедает очень много ресурсов. Собственно вопрос, есть ли возможность аплоадить файл сразу в блоб потоком? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 11:52 |
|
||
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
Странно, но тут пишут что в последнем хибере всё нормально стримится http://stackoverflow.com/a/11947063 Вообще кешировать же вы эти данные не будете в Hibernate, поэтому никто не мешает для них завести совершенно отдельные pure JDBC методы. Новомодные облака это здорово. Но на вашем месте я бы ещё раз хорошенько прикинул ожидаемые размеры и посоветовался с хостером. Потому что, если количество таких блобов со временем растет, базу хорошо бы правильно разбить на партиции и хранить блобы отдельно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 12:07 |
|
||
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
Ищущий Знанияочень много Ищущий Знаниячерез какое-то время конкретнее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 12:09 |
|
||
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, +1 облака тут совершенно ни при чём ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 12:11 |
|
||
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
Ищущий ЗнанияЕсть Tomcat и PostgreSQL. Суть в чем, сейчас при загрузке получается так, что файл сначала полностью закачивается в память и только потом сейвится. В результате, через какое-то время, томкат отъедает очень много ресурсов. Дело же не только в hinernate. Еще вопрос, как в Tomcat'е сервлет параметры принимает IMHO. Нужно смотреть код и разбираться. 64 бит Java, eden по максимому, что бы это файлы в eden всегда помещались (не выталкивались) и наплевать ))) Памяти, что ли жалко ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 12:16 |
|
||
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
BlazkowiczСтранно, но тут пишут что в последнем хибере всё нормально стримится http://stackoverflow.com/a/11947063 Что то не увидел там, что с хибернейтом все хорошо. Рекомендуют делать без него через JDBC. BlazkowiczНовомодные облака это здорово. Но на вашем месте я бы ещё раз хорошенько прикинул ожидаемые размеры и посоветовался с хостером. Потому что, если количество таких блобов со временем растет, базу хорошо бы правильно разбить на партиции и хранить блобы отдельно. Там не такой и большой то объем... загруженные данные обрабатывают и чистят от старых данных. Размер БД колеблется порядка 15-25Гб, что не очень то и много. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 12:25 |
|
||
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev64 бит Java, eden по максимому, что бы это файлы в eden всегда помещались (не выталкивались) и наплевать ))) Памяти, что ли жалко ))) В этом и есть проблема. Памяти очень мало и добавлять никто не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 12:27 |
|
||
|
Upload больших файлов в БД
|
|||
|---|---|---|---|
|
#18+
В сервлете юзаем Apache'вские ServletFileUpload и DiskFileItemFactory и дальше смотрим, как хибер дружит со стримами, если умеет, то проблем не должно быть, если не умеет, то вытаскиваем из него jdbc соединение и делаем вставку сами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 12:54 |
|
||
|
|

start [/forum/topic.php?fid=59&gotonew=1&tid=2127646]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
169ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 505ms |

| 0 / 0 |
