Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
02.10.2006, 20:50
|
|||
|---|---|---|---|
хранение файлов & постгрис |
|||
|
#18+
Уважаемые гуру, возможно ли на постгрисе реализовать такое: 1) файлы хранятся на одном компьютере с запущеном сервере БД 2) в базе данных есть ссылки на эти файлы 3) когда удалённый пользователь запрашивает файл, то постгрис читает его с диска и передаёт выражении SELECT 4) когда удалённые пользователь хочет сохранить(заменить)файл, постгрис получает его как параметр к запросу INSERT (UPDATE), и сохраняет не БД а на жесткий диск в опредённый каталог 5) удалённый пользователь не имеет доступа к файлам на диске 6) по возможности чтобы при чтении/сохранении/обновлении файла, постгрис жал его каким-нить архиватором ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.10.2006, 00:36
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
Разве что создать свой тип и работать с ним через Си-шные хранимые процедуры... ===================================== Страну, в которой все ходят на бровях, на колени не поставишь... ===================================== ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.10.2006, 06:52
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
у меня была задача только по чтению файлов с диска, написал сам процедуры Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. сделай аналогично для записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.10.2006, 13:55
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
А так не проще? Код: plaintext 1. 2. 3. 4. 5. 6. Но это так, к слову. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.10.2006, 19:25
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
А если уж нужно совсем просто, тогда так - встроенные ф-ии работы с файлами, есть в 8.1: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.10.2006, 07:26
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
J.W.А если уж нужно совсем просто, тогда так - встроенные ф-ии работы с файлами, есть в 8.1: Код: plaintext 1. текстовые файлы в домашней папке PostgreSQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.10.2006, 22:51
|
|||
|---|---|---|---|
хранение файлов & постгрис |
|||
|
#18+
ага как я понял будь это самописная функция на перле, или на C++, или встроенная pg_read... вылезти за пределы домашнего каталога и тем более на другой компьютер не получится, так? или есть варианты? может можно посылать сигналы/сообщения своему процессу, который передаст файл во временный, доступный постгрису каталог? сложность в том, что если давать ссылку например в расшареном по NetBios или HTTP ресурсе, то выходит должны быть доступны доступны все файлы а надо разграничивать доступ надо иметь возможность изменять файлы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.10.2006, 03:37
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
Кифирчикага как я понял будь это самописная функция на перле, или на C++, или встроенная pg_read... вылезти за пределы домашнего каталога и тем более на другой компьютер не получится, так? или есть варианты? может можно посылать сигналы/сообщения своему процессу, который передаст файл во временный, доступный постгрису каталог? сложность в том, что если давать ссылку например в расшареном по NetBios или HTTP ресурсе, то выходит должны быть доступны доступны все файлы а надо разграничивать доступ надо иметь возможность изменять файлы Для самописной функции никаких ограничений относительно каталога нет. Куда есть доступ юзеру, под которым запущен серверный процесс - туда и можно ходить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.10.2006, 09:13
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
КифирчикУважаемые гуру, возможно ли на постгрисе реализовать такое: 1) файлы хранятся на одном компьютере с запущеном сервере БД 2) в базе данных есть ссылки на эти файлы 3) когда удалённый пользователь запрашивает файл, то постгрис читает его с диска и передаёт выражении SELECT 4) когда удалённые пользователь хочет сохранить(заменить)файл, постгрис получает его как параметр к запросу INSERT (UPDATE), и сохраняет не БД а на жесткий диск в опредённый каталог 5) удалённый пользователь не имеет доступа к файлам на диске 6) по возможности чтобы при чтении/сохранении/обновлении файла, постгрис жал его каким-нить архиватором ? Есть клиентская программа, и есть сервер. Клиент посылает данные, а сервер их хранит. Моя функция выдает уже сохраненные на диске сервера файлы. Напиши свою функцию, в которую будет передавать данные клиент, а сервер их будет записывать на свой диск. При этом откуда будет браться исходный файл, это забота клиента. А делать из сервера БД прокси для чтения/записи файлов хоть откуда, IMHO не очень правильно, хотя вполне реально. При этом не забывай, что bytea передается кодированный, что для бинарных файлов многократно увеличивает объем данных (соответственно трафик и нагрузка на сервер). т.е. для 1,2,3 подходит моя функция, для 4 нужно написать соответсвующую функцию, для 6 у меня есть еще одна функция, выполняет команду на сервере Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. т.е. функцией 4 записываешь файл во временную папку на сервере, потом Код: plaintext 1. 2. для получения файла выполняешь на сервере Код: plaintext 1. 2. и на клиенте его читаешь Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.10.2006, 09:16
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
готов обсудить размер гонорара за разработку функции 4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.10.2006, 18:05
|
|||
|---|---|---|---|
хранение файлов & постгрис |
|||
|
#18+
to Serik Akhmetov Огромное спасибо за инфу, для меня это действительно то, что надо, На счёт "гонорара" - я к сожалению не работодатель, и этот проект для меня представляет больше академический интерес чем комерческий, к тому же все части этой головломки есть, осталось врубиться в особенности технической реализации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.10.2006, 07:00
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
Подозреваю, что следующий вопрос будет "Как представить эти данные", см. http://fuse.sourceforge.net/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.10.2006, 21:28
|
|||
|---|---|---|---|
хранение файлов & постгрис |
|||
|
#18+
:) "Как представить эти данные"? клиенты под форточками если я смог прочитать постгрисом файл, то затем передаём его клиенту, тот в свою очередь сохраняет во временную папку и файл открывается соответствующим приложением, это строк 10...15 кода какие сложности в предствалении этих данных? Тут блин проблемма, что перл не ставится, и сишные библиотеки: ERROR: could not find function "add_one" in file "D:/Program Files/PostgreSQL/8.1/lib/add_one.dll" хотя всё там есть :( Сервак в ближайшем будущем передет на линуху, и рассматривается ещё и такой вариант: - на серваке, для каждого пользователя программы, создаётся NetBios (ftp, http) папка, пароль получает клиент из БД - когда пользователь запрашивает файл, то СУБД, системными командами переносит(распаковывает) его в индивидуальную для пользователя папку, и передаёт клиенту ссылку - когда пользователь хочет внести новый/сохранить изменённый файл, то клиент закачивает его в папку пользователя на сервере и передаёт ссылку на него постгрису, а тот жмёт его и кидает в спец каталог Что думаете по этому поводу? вроде и сервак не напрягаем пережевыванием файлов, и разграничиваем права на информацию мне кажется единственная сложность может быть в определении "как долго держать распакованный файл в папке пользователя" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.10.2006, 07:17
|
|||
|---|---|---|---|
|
|||
хранение файлов & постгрис |
|||
|
#18+
КифирчикТут блин проблемма, что перл не ставитсяПод Windows устанавливаешь ActivePerl и делаешь createlang Кифирчик"как долго держать распакованный файл в папке пользователя"Пользователь работает напрямую с файлом на сервере ? или все таки клиенская программа скачивает файл во временную папку ? В любом случае ответ дает клиенская программа, в крайнем случае просто при входе в программу чистить свою папку на сервере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=53&mobile=1&tid=2006042]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
24ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 330ms |

| 0 / 0 |
