powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / 40 Тб база, с чего начать?
25 сообщений из 45, страница 1 из 2
40 Тб база, с чего начать?
    #34449378
Mike7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно организовать хранение примерно 20 миллионов документов, состоящих преимущественно из одного или нескольких файлов в формате DjVu (http://ru.wikipedia.org/wiki/DjVu - если кому интересно что за формат). Один документ, таким образом, занимает в среднем чуть меньше 2 Мб. Соответственно, общий объём базы составит порядка 40 Тб.

Формат DjVu выбран, в частности и потому, что он поддерживает слой текста и возможность поиска текста внутри таких файлов. Соответственно и в базе данных должны быть возможности для полнотекстового поиска внутри хранимых DjVu файлов, например, составлением индекса при загрузке в базу или ещё как.

Основная нагрузка на базу – выдача документов по запросу и осуществление поиска по тексту внутри. Обновление базы будут происходить достаточно редко, примерно 1000 документов в день добавляться, а изменения среди уже добавленных будут совсем редко происходить. Ну может пара-тройка документов в день максимум изменится.

Количество пользователей – примерно 1000, предполагается, что работать с базой они будут активно и один пользователь может запросить в день около 100 документов. Естественно, время ожидания загрузки не должно раздражать пользователей, следовательно оно не должно быть больше минуты, по-любому.

Интерфейс для работы клиентов – обычный браузер.

Посоветуйте в сторону каких систем и решений начинать думать. Операционная система, СУБД, серверный софт для раздачи, железо для хранения данных, для раздачи их.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34449554
stradivarius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По-видимому, Yandex.Server. Если нужен русский язык, сложные запросы, морфология. Правда, у них явно не сказано о поддержке djvu.
Сделать простейшее индекстирование по отдельным словам несложно и самим, сохранить индекс в бинарных файлах и mmap/bsearch по ним (при этом размер базы не имеет большого значения), но только без учета морфологии, сложных запрсов и т.п. - иначе имхо не оправданы затраты на R&D.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34449940
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike7Посоветуйте в сторону каких систем и решений начинать думать.
В первую очередь понять, что "найти файл" и "вернуть файл клиенту" - две разных и малосвязанных задачи. Оценить объем индексируемого текста, оценить, с какой попытки поискового запроса пользователь найдет нужный файл, составить список СУБД, поддерживающих полнотекстовый поиск, проанализировать их фичи-ограничения на предмет соответствия вашим потребностям, в интересных вариантах поинтересоваться в соответствующих форумах "а какое железо нужно, чтобы вытянуть поток из [например] 500 поисковых запросов в минуту". Аналогично, но уже мало связано с СУБД - "а что нужно, чтобы веб-сервер прокачивал на клиентов по полгига в минуту из 40тб файловой помойки".
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34450291
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начать нужно с оценки размера необходимых инвестиций в такой проект.

Если исходить из грубой оценки: мин. стоимость 1Тб (система хранения) ~ $30K
Тогда 40 * $30K = $1.2M. Это - стоимость системы хранения.

Прибавим сюда серверы и прочее HW (~ $500K), работы по развертке решения (~$100K - скромно), в итоге получим около $2М.

PS Порядок оценок соответствует проектам такого рода, так что есть большая вероятность того, что начальные требования со стороны бизнеса существенно изменятся после знакомства с цифрами.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34450358
Фотография Someбади
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любая документоимейджинговая система. Есть такие.

MS Sharepoint - вообще из коробки, если смените djvu на более распространенный формат.

--
"Government is not a solution to our problem, government is the problem."
-- Ronald Reagan
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34450368
Фотография Someбади
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, 1Тб в системе хранения на SATA стОит $2000.
--
"Government is not a solution to our problem, government is the problem."
-- Ronald Reagan
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34450759
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Someбади

Не сомневаюсь, что можно еще дешевле найти.
Я говорил о промышленных решениях, способных поддержать работу 1000 пользователей, обеспечить приемлемый уровень надежности и обслуживания, близкий к 7х24.
Причем речь шла даже не о HI-END классе, для которого стоимость 1Тб доходит до $100K.
Ну и, не учитывалась стоимость поддержки систем резервирования, бесперебойного питания и т.п.

PS Прошу не воспринимать данные оценки, как единственно возможные, т.к. они делались исходя из информации по организации весьма серьезной системы хранения в одной из очень успешных российских компаний, которая могла себе позволить такие вложения.
Цель моего сообщения - плясать от бюджета, т.к. традиционно бизнес выдвигает максимальные требования, считая, что затраты будут весьма умеренными. Когда же заказчики получают более-менее реальную оценку, то начинают рассматривать варианты и, для данного случая, могут поменять требования к объемам данных, количеству пользователей и времени доступа, например.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451317
Фотография Someбади
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я считаю hi-end storage надувательством, для распиливания бюджетов крупных глупых контор.
Если бы это было не так, системы гугля, амазона, яндекса и прочих строились бы на них, а не на максимально доступных серийных (commodity) железках.
Лишнее бабло лучше пустить на процессоры и ОЗУ в виде индексирующих ферм из тех самых commodity серверов, чтобы быстрее шла индексация.


--
"Government is not a solution to our problem, government is the problem."
-- Ronald Reagan
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451393
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> о промышленных решениях, способных поддержать работу 1000 пользователей,
> обеспечить приемлемый уровень надежности и обслуживания, близкий к 7х24.

Какова проектная надежность программно-аппаратного комплекса в Вашем случае и нафига она нужна обычной файлопомойке, можно поинтересоваться?

> HI-END классе, для которого стоимость 1Тб доходит до $100K

Можно подробнее, что это за железка за столь безумные деньги? Лицевая панель, полагаю, инкрустирована золотом?

> которая могла себе позволить такие вложения

Любая задача имеет альтернативные решения. Ниоткуда не следует, что в Вашем случае бабло не было просто успешно освоено.

> плясать от бюджета

В данном случае - бессмысленное занятие. Автор вопроса не понимает, как должна работать такая система.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451400
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> 1Тб в системе хранения на SATA стОит $2000.

Уже сильно дешевле.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451593
Mike7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разумеется, что создавать такую систему только на основе обсуждения на форуме никому не позволят :)
Насчет бюджета могу сказать, что Jimmy где-то угадал, речь примерно о такой сумме и шла, возможно несколько меньшей, но порядок тот же.

> В данном случае - бессмысленное занятие. Автор вопроса не понимает, как должна работать такая система.

А я разве говорил, что понимаю? Более того, вовсе не я самый главный, максимум чего могу, аргументированно посоветовать что-то выбрать.

Насчёт нагрузки я не понял откуда такая цифра в полгига за минуту взялась? Если считать, то у меня получается примерно 50-60 Мб/мин.

Насчёт SharePoint - по-моему, этот продукт вообще не для данных ситуаций был придуман, тем более, что он уже зараннее накладывает ограничения на формат файлов. DjVu - и никто не будет что-то другое выбирать. И честно говоря, я не понимаю, почему DjVu плох, если не считать его относительно малой распространенности.

Yandex.Server - думали, но боюсь в чистом виде он никак не подойдёт. Собственно, "из коробки" тут ничего не подойдёт, надо будет немало писать самим.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451835
kirill_krynko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SomeбадиЯ считаю hi-end storage надувательством, для распиливания бюджетов крупных глупых контор.
Если бы это было не так, системы гугля, амазона, яндекса и прочих строились бы на них, а не на максимально доступных серийных (commodity) железках.
Лишнее бабло лучше пустить на процессоры и ОЗУ в виде индексирующих ферм из тех самых commodity серверов, чтобы быстрее шла индексация.


--
"Government is not a solution to our problem, government is the problem."
-- Ronald Reagan

+10

Абсолютно согласен.. Storage systems могут быть оправданы для хранения данных, например, процессингового центра, требуещего очень высокой производительность в режиме 24х7.. Тогда можно использовать фоновый бэкап, автоматическое перемонтирование и т.п. А в иных случаях - имхо просто развод.

Mike7

Yandex.Server - думали, но боюсь в чистом виде он никак не подойдёт. Собственно, "из коробки" тут ничего не подойдёт, надо будет немало писать самим.

Простите за, возможно, неуместное любопытство, но интересно, что за особенности есть у задачи (кроме формата djvu), которые не реализованы в существующих системах?
Дело в том, что аналогичными задачами (работа с БД больших объемов) некоторое время я занимался, поэтому возник профессиональный интерес.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451844
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> порядок тот же

Вас, дружище, развели как кроликов.

> Более того, вовсе не я самый главный, максимум чего могу, аргументированно
> посоветовать что-то выбрать.

Простите, о каких аргументах идет речь, если Вы задачу сформулировать не в состоянии? Совет: оплатите консультацию вменяемого специалиста, сэкономите кучу бабла.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451865
Фотография Someбади
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думаю, проблема в выбиральщиках, заточенных на "допишем сами".
Проблемы вообще нет. Все доступно на рынке.

google 60,500 for document imaging djvu.
vs
google 1,190,000 for document imaging pdf searchable text.

выбрали в 60 раз менее распространенный формат, чем pdf, и начинают изобретать велосипед ;)

--
"Government is not a solution to our problem, government is the problem."
-- Ronald Reagan
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451870
Фотография Someбади
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор> 1Тб в системе хранения на SATA стОит $2000.

Уже сильно дешевле.

Я считал брэндованные и с терабайтными дисками - чего уж там мелочиться ;)

--
"Government is not a solution to our problem, government is the problem."
-- Ronald Reagan
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34451893
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> чего уж там мелочиться ;)

Да конечно, какая фигня: $800 за терабайт или два килобакса, - всего в два с половиной раза дороже. За красЯвую нашлепку на передней панели и гламурный цвет корпуса.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34452026
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike7Насчёт нагрузки я не понял откуда такая цифра в полгига за минуту взялась? Если считать, то у меня получается примерно 50-60 Мб/мин.
Ну, я не очень представляю, как считать так, чтобы получить 50-60. Твои цифры: тысяча пользователей, сто двухмегабайтных документов в день на пользователя. Рабочий день - 480 минут, для удобства округлим до 500, то есть пользователь запрашивает документ в среднем раз в пять минут, то есть в среднем 200 документов в минуту, 400Мб. Одним словом проще сказать "полгига". Разумеется, это средняя нагрузка, пиковая - отдельный вопрос, тут уже надо смотреть специфику.

Если предположить, что нагрузка размазана по 24 часам, средняя соответственно уменьшается втрое, то есть 130Мб. Но как ты получаешь 50-60, я не готов понять.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34452289
Mike7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer Но как ты получаешь 50-60, я не готов понять.

Вроде ты правильно подсчитал, но и я считал:

Нагрузка на сетевой интерфейс:
1 мин на загрузку 2 Мб = 2096Кб/60 ~= 33 Кб/сек. на пользователя надо гарантировать.
Возможное число обращений к базе в секунду: 1000 пользователей * 100 запросов в день / 8 часов = 3,47 запроса в секунду.
Следовательно, отдавать надо поток 33 Кб/сек * 3.47 = 114.5 Кб/сек с сервера.
Для гарантии, пусть 1Мб/сек.


Ты вроде тоже правильно подсчитал. Чувствую себя дебилом :)
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34452309
Mike7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike7
1 мин на загрузку 2 Мб = 2096Кб/60 ~= 33 Кб/сек.

Маленькое пояснение, а то совсем странно выглядит: 2096 Кб - это именно средний объём, округляемый до 2Мб.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34452489
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike71 мин на загрузку 2 Мбправильнее будет "не более 1 минуты на загрузку 2 Мб"
Mike7Следовательно, отдавать надо поток 33 Кб/сек * 3.47 = 114.5 Кб/сек с сервера.еще надо умножить на среднюю длительность загрузки, т.к. в каждую секунду выполняются не только запросы поступившие именно в эту секунду, но и те которые поступили до этого.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34453103
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike7Возможное число обращений к базе в секунду: 1000 пользователей * 100 запросов в день / 8 часов = 3,47 запроса в секунду.
Верно. То есть каждую секунду у сервера запрашивают 3.47 * 2096 ~= 7.1 Мб информации. На какое время он растянет ее отдачу - вопрос второй, но если он не сможет прокачивать 7.1 Мб/сек, он захлебнется (время ожидания начнет монотонно увеличиваться пока соединения не начнут падать по таймауту).

Что же до твоего решения, то cмотри внимательно:

2096Кб/60 ~= 33 килобайта в секунду на запрос
1000 пользователей * 100 запросов от пользователя в день / 8 часов = 3,47 запроса в секунду.
33 Кб/сек/запрос * 3.47 запрос/сек = 114.5 Кб (а вовсе не Кб/сек)

В мое время это была тема шестого класс школы, контроль размерности. Очевидно, что величина, измеряемая в килобайтах, никак не может являться метрикой пропускной способности.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34453125
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer33 Кб/сек/запрос * 3.47 запрос/сек = 114.5 Кб (а вовсе не Кб/сек)
Прошу прощения, уже сам поспешил. Следует читать как:

33 Кб/сек/запрос * 3.47 запрос/сек = 114.5 Кб / сек 2
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34453760
Mike7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft Mike71 мин на загрузку 2 Мбправильнее будет "не более 1 минуты на загрузку 2 Мб"
Mike7Следовательно, отдавать надо поток 33 Кб/сек * 3.47 = 114.5 Кб/сек с сервера.еще надо умножить на среднюю длительность загрузки, т.к. в каждую секунду выполняются не только запросы поступившие именно в эту секунду, но и те которые поступили до этого.

О, верно! Тогда получается, что нужно где-то 6-7 Мб/сек. т.е. где-то 10 Мб/сек.
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34457597
Lepsik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> 1Тб в системе хранения на SATA стОит $2000.

Уже сильно дешевле.


MAxtor Sata 500 G ~150 USD

low level HP server 400 USD держит 7 винтов x 500G = 3.5T ~ 1500 USD

12 серверов x 1500 = 18,000 USD

для работы в Hight Safity mode с миррорингом на MSSQL2005

еще 18000 + 1 сервер для свидетеля.

итого 40 К максимум для режима 24x7x365

+ лицензии на сервера
...
Рейтинг: 0 / 0
40 Тб база, с чего начать?
    #34457609
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lepsikитого 40 К максимум для режима 24x7x365

+ лицензии на сервера
Да уж, такой маааааленький незаметный плюс. Если не изменяет память, двадцать пять тысяч баксов на процессор - итого $625'000 не считая лицензий на операционку - и это ради того, чтобы сэкономить $40'000 на железе. Сильная мысль.

Заодно веселая мысль - тратить двадцать пять процессоров на тысячу столь активно работающих пользователей.
...
Рейтинг: 0 / 0
25 сообщений из 45, страница 1 из 2
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / 40 Тб база, с чего начать?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]