Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
bsdi4Ребят ну совсем уж Офф Топ пошел((Извините за оффтопик, но у нас с MBG к сожалению уже не впервые диалог уходит в сторону . bsdi4: ... хранение файликов в Бд размером от 20мб до 50мб ... MBG: ... А если будет 1000 запросов в секунду и выше? ... bsdi4: ... сядь и возьми калькулятор и начни считать )) ... Меня поражают подобные пальцевания не по теме. Действительно, возьмем калькулятор. Оценим необходимую толщину канала. 1000[1/сек] * 20[Мбайт] ~ 100[Гбит/сек]. Сотни гигабит в секунду! Так какой, уважаемый MBG, в этом проекте может быть разговор о 1000 запросов в секунду? У нас круто - 1000 запросов в секунду! Откуда 1000? Ну откуда-нибудь когда-нибудь, во время пиковой нагрузки... Берем калькулятор: 1000[запрос/сек] / 300[польз] = 3 [запроса в секунду от каждого пользователя], подозрительно активные пользователи получаются. Но уж по крайней мере у нас 150 запросов в секунду! Откуда 150? Да вместо того, чтобы организовать ситему нотификации через нормальный IM-протокол, сделали на клиетах автоматический релоад каждые две секунды. Нет-нет, это не ошибка проектирования. Это работающий высоконагруженный сервис! И не важно, что нагрузку создали сами проектировщики кривыми ручками/мозгами. Еще раз сорри за оффтопик. bsdi4Может всетаки чего потеме а? И перейдем к PostgreSQL и проблеме хранения большого количество бинарных данных а?По теме многие высказали доводы и мнения. Конкретно с такой задачей возможно никто из присутствующих на форуме не сталкивался. Например минусы "хранения большого кол-ва небольших файлов в ФС", с которыми мы столкнулись на практике, я привел. Задача не в точности ваша, но смежная. Дальше наверное остается только Вам делать выводы и выбирать решение. Я бы наверное выбрал хранение фалов в ФС, потому что побаиваюсь базы объемом 1Тб, причем с длинными строками, имхо Shweik точно охарактеризовал ситуцию "такое поле - просто мёртвый балласт". bsdi4Так ребят, хорошо. Поставлю вопрос иначе 4Gb Рамы хватит для нормальноый полноценой работы PostgreSQL с 700Gb Базой?Вопрос слишком общий. Зависит от требований к базе по характеру запросов и их скорости выполнения. Например если 1) база работает в основном на выборки, 2) в вашей предметной области соблюдается закон 20/80, то есть 80% пользователей интересует 20% информации. То получается что 4Gb/700Gb=0.5% информации закачанной в кэш оперативной памяти удовлетворят, скажем, 5% пользователей. То есть для большинства пользователей база будет тянуть данные с HDD, и скорее всего именно диски будут узким местом в этой системе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 11:13 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
да вот над дисковой потсистемой я как раз сейчас работаю. вроде не плохо получается)) если нужно, то потом распишу как можно адаптировать ее под хранения больших бинарников в PostresSQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 12:00 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
А как такая идея: храним все в базе (файлы ввиде отдельной таблицы id-file) бэкапим pg_dump все кроме этой таблицы а файлы утилиткой (которую пишем на томже языке, что и клиента) запрашиваем и сваливаем в диру. сей вариант думается для библиотеки, где скорее всего удаляться документы не будут - нормальный вариант ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 13:05 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
VzhikА как такая идея: храним все в базе (файлы ввиде отдельной таблицы id-file) бэкапим pg_dump все кроме этой таблицы а файлы утилиткой (которую пишем на томже языке, что и клиента) запрашиваем и сваливаем в диру. сей вариант думается для библиотеки, где скорее всего удаляться документы не будут - нормальный вариантХреновый вариант. Так как между бэкапом всего кроме файлов и бэкапом самих файлов есть люфт по времени, то вот тебе возможно и расхождение данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 13:14 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
да за бэкап я не волнуюсь, тут вообще все просто. постояно бэкаплю по 2-3Tb и вроде пока ничего не терялось... так что лучше по на проектировании и оптимизации сосредоточусь. Сейчас написал Sql сценарий, который сгенерит тестовую базу и ее псевдо содежимое с Pdf'ками по 50мб, 15000 позиций, при 10-15 обращениях в сек., должно с эмитировать более менее реальную нагрузку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 13:59 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
LeXa NalBat Меня поражают подобные пальцевания не по теме. Действительно, возьмем калькулятор. Оценим необходимую толщину канала. 1000[1/сек] * 20[Мбайт] ~ 100[Гбит/сек]. Сотни гигабит в секунду! Так какой, уважаемый MBG, в этом проекте может быть разговор о 1000 запросов в секунду? Хорошо считаете. Если _все_ запросы только на получение файлов (т.е. нет никакого веб-интерфейса с разделами, описанием файликов и т.п.), лучший выбор - фтп сервер и никакая база в принципе не нужна. А на нормальном сервере с библиотекой запросов на просмотр страниц на два порядка больше, чем на закачку. Далее, с какого перепугу вы полагаете, что все клиенты будут скачивать файлы за 1 секунду? А если чел с модема 3 часа файл тянет, и таких челов 10 000? LeXa NalBat У нас круто - 1000 запросов в секунду! Откуда 1000? Ну откуда-нибудь когда-нибудь, во время пиковой нагрузки... Берем bsdi4Ребят ну совсем уж Офф Топ пошел((Извините за оффтопик, но у нас с MBG к сожалению уже не впервые диалог уходит в сторону . bsdi4: ... хранение файликов в Бд размером от 20мб до 50мб ... MBG: ... А если будет 1000 запросов в секунду и выше? ... bsdi4: ... сядь и возьми калькулятор и начни считать )) ... калькулятор: 1000[запрос/сек] / 300[польз] = 3 [запроса в секунду от каждого пользователя], подозрительно активные пользователи получаются. Но уж по крайней мере у нас 150 запросов в секунду! Откуда 150? Да вместо того, чтобы организовать ситему нотификации через нормальный IM-протокол, сделали на клиетах автоматический релоад каждые две секунды. Нет-нет, это не ошибка проектирования. Это работающий высоконагруженный сервис! И не важно, что нагрузку создали сами проектировщики кривыми ручками/мозгами. Вы говорите про _постоянное_ соединение. И там, где нет возможности использовать такие соединения (видели сети, где даже скайп не работает? что уж там про аську или джаббер говорить) приходится решать задачу теми способами, что доступны. И сервис не высоконагруженный, ибо все эти запросы обновлений берут около 2% процессора на указанном железе. Что, вообще говоря, не создает никакх проблем. Но дело-то не в этом. Речь шла о железе и его возможностях. Посмотрите в сторону erlang, почитайте доклад Игоря Сысоева о поддержке сотен тысяч коннектов, может, что-то прояснится для вас. Какие будут запросы - это решать вам, как проектировщику, просто помните, что тысячи запросов в секунду вовсе не требуют мощного железа (точнее, это зависит от задачи). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 16:25 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
MBGХорошо считаете. Если _все_ запросы только на получение файлов (т.е. нет никакого веб-интерфейса с разделами, описанием файликов и т.п.)автор топика задал вопрос о работе с большими файлами, а не о "веб-интерфейсе с разделами, описанием файликов и т.п." MBGА на нормальном сервере с библиотекой запросов на просмотр страниц на два порядка больше, чем на закачку.не могу сказать про "нормальный сервер с библиотекой", но например у нас кол-во поисковых запросов составляет примерно четверть от общего числа обращений к серверу. разница не на два порядка... MBG LeXa NalBatОценим необходимую толщину канала. 1000[1/сек] * 20[Мбайт] ~ 100[Гбит/сек].Далее, с какого перепугу вы полагаете, что все клиенты будут скачивать файлы за 1 секунду? А если чел с модема 3 часа файл тянет, и таких челов 10 000?скорость соединения с клиентом не влияет на оценку ширины требуемого канала! если пользователь с модема тянет 20Мб файл 3 часа, значит скорость соединения с ним равна 20[Мбайт] / 3[час] = 20*1000*1000*8[бит] / 3*3600[сек] ~ 15[Кбит/сек] для скорости поступления таких запросов от подобных юзеров равной 1000[запросов в секунду] получаем, что за три часа их накопится 1000 * 3 * 3600 ~= 10 миллионов. при этом каждую секунду будут открываться 1000 новых коннектов к серверу и закрываться другие 1000 старых, которые уже отработали свои три часа и скачали файл. то есть в каждый момент времени открыто 10 миллионов коннектов. получается, что сервер должен отдавать данные со скоростью 10млн * 15[Кбит/сек] = 150[Гбит/сек] ~ 100[Гбит/сек]. скорость соединения с клиентом не влияет на оценку ширины требуемого канала! MBGВы говорите про _постоянное_ соединение.нет. например про клиентское приложение, которое, будучи запущенным на рабочей станции пользователя, слушает порт. PS: bsdi4, сорри за офф :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 17:04 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
MBGА на нормальном сервере с библиотекой запросов на просмотр страниц на два порядка больше, чем на закачку.очередной оффтопик... не могу удержаться... ехал с работы домой, пришло озарение. это же золотая жила! какое огромное кол-во рекламы можно впихнуть юзеру, пока он будет 100 раз кликать по разным страницам, прежде чем получить то, ради чего зашел на сайт - скачать книгу. только вот боюсь, не найдется в природе ни одного такого терпеливого пользователя. думаю, если юзер за 3-10 кликов по сайту не получает того, ради чего пришел, он ... уходит. :-( откуда вы берете ваши оценки? "1000 запорсов в секунду", "два порядка". варианты ответов: а) любите круглые цифры, б) с луны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 22:28 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
В библиотеки баннерной рекламы вообще не будет!!!!! Только Google AdSense и все, и то не навидном месте, впослетствии отстрелится и она. А тематическая реклама будет в специально отведенных под это разделы. Это библиотека, а не хлам где размищаются ссылки на Рапиду и везде голые бабы с членом во рту, с надписью - "Не скучай"... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 23:45 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
LeXa NalBat для скорости поступления таких запросов от подобных юзеров равной 1000[запросов в секунду] получаем, что за три часа их накопится 1000 * 3 * 3600 ~= 10 миллионов. при этом каждую секунду будут открываться 1000 новых коннектов к серверу и закрываться другие 1000 старых, которые уже отработали свои три часа и скачали файл. то есть в каждый момент времени открыто 10 миллионов коннектов. получается, что сервер должен отдавать данные со скоростью 10млн * 15[Кбит/сек] = 150[Гбит/сек] ~ 100[Гбит/сек]. "для скорости поступления" - это вы к чему? Есть тысяча юзверей, их запросы обрабатываются три часа, так вот и будут у вас 3 часа висеть эти 1000 подключений к веб-серверу, подключения к базе данных и запущенные скрипты. То есть каждую секунду обрабатывается 1000 запросов, в следующую секунду могут обрабатываться эти же запросы или новые, потребление ресурсов то же самое. Потому я про пул подключений к БД и пул коннектов напомнил. LeXa NalBat MBGВы говорите про _постоянное_ соединение.нет. например про клиентское приложение, которое, будучи запущенным на рабочей станции пользователя, слушает порт. На клиентской машине в корпоративной сети слушать даже локальный порт не удастся, ибо политика безопасности и соответствующие правила для файрволла, про внешний порт вообще речи нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 23:49 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
MBG LeXa NalBatдля скорости поступления таких запросов от подобных юзеров равной 1000[запросов в секунду] ..."для скорости поступления" - это вы к чему? Есть тысяча юзверей, их запросы обрабатываются три часа, так вот и будут у вас 3 часа висеть эти 1000 подключений к веб-серверу, подключения к базе данных и запущенные скрипты. То есть каждую секунду обрабатывается 1000 запросов, в следующую секунду могут обрабатываться эти же запросы или новые, потребление ресурсов то же самое.да нет же! что означает фраза "сервер обрабатывает N запросов в секунду"? что каждую секунду к серверу приходит N новых запросов, каждый из этих запросов сервер успешно обрабатывает и отдает ответ клиенту за время T (не равное 1 секунде!!!). при этом в каждый момент времени сервер обрабатывает и отдает ответ одновременно M клиентам, где M = N * T. мы говорим (вы начали говорить: "А если будет 1000 запросов в секунду и выше?") о количестве запросов в секунду! а не о количестве одновременно обрабатываемых запросов. это разные вещи, не путайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2007, 00:53 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
LeXa NalBat мы говорим (вы начали говорить: "А если будет 1000 запросов в секунду и выше?") о количестве запросов в секунду! а не о количестве одновременно обрабатываемых запросов. это разные вещи, не путайте. Я говорил про количество обрабатываемых запросов в секунду, а вы - про количество поступающих. Терминологии устоявшейся тут нет, поскольку эти понятия часто смешивают. Зачастую запросы обрабатываются настолько быстро, что это одно и то же. Но для закачки больших файлов это не так. В частности, тут уже следует разделять бэкэнд и фронтэнд, иначе веб-сервер будет перегружен "длинными" сессиями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2007, 14:39 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
Ладно , раз уж тема окончательна свалилась в оффтоп.... :-\ Я пока что не встречал _стабильно_работающих_ решений вроде (библиотеки) , где сессия получения содержимого одного поля растягивалась скажем на три-четыре часа... Есть только общие разгагольствования теоретиков про вещ вроде "отдачи видео/аудио потока SQL-сервером" Хотя первые подобные попытки запихнуть док/jpeg в BLOB были ещё в 97-98 воз и ныне там - отдавать файлы более 30 Мб также затруднительно как 7-8 лет назад так и сейчас. Ну и толку что транакция закачки/выкачки файла обломилась "успешно" - пользователь жаждет докачать его а приходится тянуть по-новой. IMHO разумнеевыдать ссылку на http/ftp(для закачки практикуются временные аккаунты). Вот с этим справится чудесно вебморда с любым sql-сервером и так работает масса проектов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2007, 04:35 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
MBGЯ говорил про количество обрабатываемых запросов в секундунет. вы говорили про количество одновременно обрабатываемых запросов в некоторый момент времени. заметьте, в МОМЕНТ времени, а не в ПЕРИОД времени (каковым является секунда). формулируйте точнее. MBGТерминологии устоявшейся тут нет, поскольку эти понятия часто смешивают.не обобщайте, пожалуйста. ;-) скажите по-простому: я, MBG, не понимаю термина "время обработки запроса", путаю понятия "количество запросов в единицу времени" и "кол-во одновременно обрабатываемых запросов". MBGЗачастую запросы обрабатываются настолько быстро, что это одно и то же.Пример: сервису поступает 10 запорсов в секунду: N = 10 [зап/сек] каждый запорс обрабатывается "быстро", за одну десятую секунды: T = 0.1 [сек] тогда в каждый момент времни сервис обрабатывает один запрос: M = N * T = 1 [зап] N = 10 [зап/сек] не равно M = 1 [зап] ни по значению, ни по размерности! MBGНо для закачки больших файлов это не так.А "как это" для закачки больших файлов? Как предлагаете оценивать в этом случае? Вместо простой формулы M=N*T, применимой во всех случаях, для быстрых, медленных запросов,.. :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2007, 12:07 |
|
||
|
Online-библиотека или подойдет ли PgСюкул?
|
|||
|---|---|---|---|
|
#18+
LeXa NalBat MBGЯ говорил про количество обрабатываемых запросов в секундунет. вы говорили про количество одновременно обрабатываемых запросов в некоторый момент времени. заметьте, в МОМЕНТ времени, а не в ПЕРИОД времени (каковым является секунда). формулируйте точнее. Период времени - это любой интервал, вовсе не обязательно одна секунда. Например, есть скорость м/с и км/час. По теме: если время обработки S и период времени наблюдения T удовлетворяют соотношению S>>T, то количество обрабатываемых (не обработанных, а находящихся в обработке, несовершенная форма глагола) в течении периода T запросов примерно равно количеству запросов в определенный момент времени t. Примерно - потому что за T количество поступивших запросов может отличаться от количества завершившихся. При этом T может составлять десятки минут или даже часы. А вы говорите о другом, о количестве обработанных (выполненных) запросов. Однако для "длинных" сессий много ресурсов сервера занято как раз "висящими" запросами и эти ресурсы не освобождаются до завершения обработки. Этот случай отличается от варианта с обработкой быстро выполняемых запросов, т.к. в последнем ресурсы быстро освобождаются и имеет интерес другой параметр - количество запросов, выполненных за единицу времени. Не хотел никого запутать, надеюсь, в этот раз выразился яснее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2007, 19:36 |
|
||
|
|

start [/forum/topic.php?fid=53&gotonew=1&tid=2004831]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
8ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 344ms |

| 0 / 0 |
