2013-12-26 10 views
0

У меня есть вопрос, связанный с выбором технологии для моего экспериментального проекта.Какую базу данных я должен выбрать для больших текстовых файлов

Я собираюсь хранить много текста в моей базе данных, анализировать и анализировать текст и извлекать необходимую информацию. Когда процесс будет завершен, данные будут отправлены через resty api в другой проект.

Я собирался использовать postgres с django, как в моем втором проекте, но я не уверен, что это правильный выбор для текстового анализа, и я не уверен, что у меня должны быть оба проекта раздельными.

Что мне выбрать? Postgres, mongo, что-то еще?

+0

Это не похоже, что вам нужна база данных при описании вашего описания. «Текстовый анализ» звучит как код, который вы пишете, например, на Python. – WiredPrairie

+1

Я использовал бы технологию fts для анализа текста, например, Elastic Search или Solr или Sphinx и т. Д. И т. Д., На самом деле эластичный поиск имеет специальные инструменты для анализа текста, построенные в – Sammaye

+0

. Я полностью забыл об эластичном поиске. Я думаю, что я проверю его и проведу pgsql для своих задач. – Efrin

ответ

1

Насколько я знаю, любые реляционные dbms отлично справляются с большими текстами без усилий. Google использует MySQL (он переключается на MariaDB), и я не думаю, что он особенно медленный :)

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

Итак: если вы используете PostgreSQL, я действительно думаю, что вы не должны его менять.

+2

MongoDb предназначен не только для статистических данных. И Google использует много баз данных и использует BigTable для веб-индексирования: http://en.wikipedia.org/wiki/BigTable – WiredPrairie

+0

Как @WiredPrairie говорит, что Google использует MySQL только для очень небольшого количества вещей, также когда mongodb теряют данные, и когда это нормально в MongoDB, чтобы потерять данные? – Sammaye

+0

WairedPrairie, Sammaye: MongoDB имеет систему регистрации/ведения журналов, которая не настолько безопасна. Это не критика: это позволяет MongoDB быть быстрым. Программное обеспечение, которое пытается сделать все, слишком плохо, чтобы что-либо сделать. Программное обеспечение, которое делает выбор, хорош для некоторых вещей, а не для других. MongoDB хорош для агрегирования операций по статистическим данным и аналогичных задач. Не используйте его, когда вам нужна целостность. –

0

Я думаю, что файловая система - идеальное место для хранения файлов.
Ассоциация с базой данных может быть выполнена с помощью полных имен файлов.

Некоторые RDMS также предоставляют API для доступа к файловой системе, например Oracle BFILE или SqlServer FILESTREAM.

+0

@ Downvoter пожертвовать комментарий plz. –

Смежные вопросы