LINUX.ORG.RU

Выбор технологий для организации справочно-экспертной системы

 , ,


0

4

Здравствуйте!

Вобщем перейду сразу к сути: есть огромный массив текстовой информации, представленный в виде текстов, разметка разная, есть и markdown/latex/word etc, но это не суть важно, ибо все будет приводиться к чему-либо единому + иногда попадаются перекрестные ссылки, графики, таблицы, картинки

Нашей задачей является спроектировать базу данных, заполнить ее этой информацией и разработать интерфейс работы с этой базой данных. Проблема в том, что по объему база данных, по нашим очень оптимистическим прикидкам уже выйдет за 500-600ГБ, а весь объем данных с медиа инфой за 2ТБ

Интерфейс пользователя должен обладать контекстным поиском по всему массиву данных и обладать приемлемым быстродействием (допускается 30-40 секундная обрадотка запроса)

Собственно мы уже закончили формировать и редактировать сами документы, теперь наступает стадия создания БД и написание бекэнда и фронтенда. Фронтенд - мы планируем использовать CGI и писать бекэнд на Си, по поводу использования БД не знаем что лучше использовать

Если резюмировать: необходимо реализовать поиск по огромному объему текстовой информации, хотел спросить какие лучше использовать технологии языки итд ? По функционалу это будет работать как http://www.consultant.ru/, только контент будет ориентирован на суд. эксперта и специалиста, то есть более узкий профиль

Короче говоря, вам надо что-то типа Wiki, только без свободного редактирования?

Кстати Wikipedia использует поисковый движок Lucene, в качестве другого варианта можете посмотреть Sphinx.

static_lab ★★★★★
()

Сфинкс на таком объеме за доли секунд искать будет

pi11 ★★★★★
()

Я немного не понял, у вас цельные документы, или можно как-то разделить текст и картинки, а потом сливать или рендерить их перед скачиванием?

Как будут редактировать эти документы, как вики? Или просто заливать и сливать целые документы?

Сколько пользователей всего, в сутки? Какой бюджет? Рассматриваете ли вы готовые облака? У вас в командне экспертиза только в С?

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 3)
Ответ на: комментарий от static_lab

Короче говоря, вам надо что-то типа Wiki

не совсем, я попытаюсь объяснить функционал системы как готового продукта:

вобщем живет себе слеователь/эксперт, и тут поступает дело, например следователю надо провести допрос -> ему надо бланки для допроса и рекомендуемую литературу по проведению допроса и ссылки на законы - соответственно следователь набирает «как проводить допрос» или «блан допроса» и ему выдает все и сразу

или например эксперту надо узнать как лучше идентифицировать пальчики на стальной поверхности - он пишет «отпечатки пальцев на металле» или «идентификация следов на метал. поверхностях» и ему выдает всю необходимую методику по этой процедуре

сами материалы, книги, документы итд есть - редактура закончена осталось решить проблему с технологиями

PS. поиск с элементами семантики пишу...

VVSWarHead
() автор топика
Ответ на: комментарий от pi11

На таком объем данных встроенный поиск будет очень медленный

тут важно то, что полюбас надо пробегать всю БД

Как будут редактировать эти документы, как вики? Или просто заливать и сливать целые документы?

редактируют только админы - пользователю выдает готовые формы проще говоря мы пишем свой аналог консультанта+ или гаранта, только у нас контент будет другой

VVSWarHead
() автор топика

А система будет онлайн или оффлайн?

static_lab ★★★★★
()

полнотекстовый поиск в постге или lucene. в любом случае, обьем данных смешной. для семантического поиска люсин лучше. а, еще, пожалуйста, не пшите на Си =)

val-amart ★★★★★
()
Ответ на: комментарий от Deleted

не хочу разводить флейм но для вебсервисов Си плохой выбор — много потенциала для ошибок, длинный цикл разработки, отсутствие многих удобных инструментов и механизмов (чистый cgi уныл). хороших программистов на Си мало, а факап плохого программиста на Си гораздо более печален чем такой же факап на Питоне скажем.

val-amart ★★★★★
()
Ответ на: комментарий от val-amart

Мне этой информации достаточно. Спасибо за ответ.

Deleted
()
Ответ на: комментарий от VVSWarHead

тут важно то, что полюбас надо пробегать всю БД

Не надо никуда пробегать, индексы же

Вебморда к полнотекстовому поиску postgres прикручивается за неделю-две: https://disarmer.ru/info.pl?p=ed_conference_2012

disarmer ★★★
()
Ответ на: комментарий от Deleted

C не плох, просто тут он своей скоростью ничем не поможет, а скорость разработки на нем не особо высокая

umren ★★★★★
()

elasticsearch или sphinx или solr + типичная SQL БД + любой ЯП/Платформа, ну на C или там C# лучше это не делать, дорого выйдет :)

umren ★★★★★
()
Ответ на: комментарий от Harald

а как же миллионы денег которые нельзя будет заработать? :D

umren ★★★★★
()
Ответ на: комментарий от Harald

А если выложить всё это в интернеты и потом искать гуглом? :) >Почти бесплатно получится

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

VVSWarHead
() автор топика

Берите что-то готовое для построения полнотекстового поиска. Я бы посоветовал solr, в случае если его возможностей не хватит - можно будет довольно просто вокруг lucene, который он внутри себя использует, накрутить свой велосипед. И java||c# для морды ко всему этому хозяйству. По банальной причине - на порядки легче найти вменяемых разработчиков. Мы уже третий месяц не можем найти вменяемого сишника, хоть у нас и хорошие условия работы, а вот с яверами и шарперами проблем особых нет.

Nagwal ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.