Какая база данных лучше всего подходит для Rails? - PullRequest
2 голосов
/ 19 ноября 2008

Я занимаюсь разработкой приложения на Rails, которое будет иметь доступ ко множеству RSS-каналов или сайтов для сканирования данных (в основном новостей). Это будет что-то вроде Новостей Google, но с другим подходом, поэтому я буду хранить много новостей (или сводок новостей), классифицировать их по разным категориям и использовать методы ранжирования и рекомендаций.

  • Должен ли я пойти с MySQL?

  • Стоит ли использовать IBM DB2 purexml для хранения документов? Также Ruby поиска реализации (Ferret, Ultrasphinx и другие) не требуется, если я выберу DB2. Это правильно?

  • Каковы преимущества PostreSQL в этом?

  • Имеет ли смысл использовать Couch DB в этот сценарий?

Я бы хотел выбрать лучший вариант, но без чрезмерного усложнения решения. Поэтому я отказался от идеи использовать два разных решения для хранения (одно для новостных документов, а другое для остальных данных). Я также рассматриваю только «бесплатные» опции, поэтому я не смотрел на Oracle или MS SQL Server.

Заранее спасибо.

Ответы [ 5 ]

3 голосов
/ 23 ноября 2008

Во-первых, признавая, что я вообще не люблю mysql, скажу, что по этой теме было написано о postgres:

http://oldmoe.blogspot.com/2008/08/101-reasons-why-postgresql-is-better.html

Это всегда мой выбор, когда мне нужна чистая реляционная база данных. Я не знаю, будет ли база данных документов более подходящей для вашего приложения, не зная об этом больше. Похоже, это то, что вы должны хотя бы исследовать.

3 голосов
/ 19 ноября 2008

purexml тяжелее SQL, поэтому вы платите больше за обмен данными между веб-сервером и БД. Если вы планируете иметь много пользователей, я бы избегал этого, лучше позволить вашему веб-серверу кэшировать запросы, избегая, таким образом, создания XML (RSS) каждый раз, если вы об этом думаете.

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

CouchDB может иметь смысл, но если вы планируете выполнять OLAP (автономный анализ) ваших данных, то лучше будет использовать обычную СУБД.

1 голос
/ 21 ноября 2008

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

О чем подумать; из-за особенностей вашей системы у вас, вероятно, будут таблицы, которые очень быстро растут, поэтому вы можете подумать о производительности.

Таким образом, MySQL поддерживает вертикальное разбиение, но только из V 5.1. Имейте это в виду.

Приветствия

Джакобо.

0 голосов
/ 10 декабря 2008

MySQL хорош в производстве. Я не использовал PostgreSQL для рельсов, но это также хорошее решение.

В средах разработки и тестирования я начал с SQLite (по умолчанию) и, возможно, перенесу вашу целевую БД в тестовую среду по мере приближения к завершению.

0 голосов
/ 10 декабря 2008

Мне кажется, что приложение, которое вы создадите, может легко превратиться в крупномасштабное веб-приложение. Я хотел бы предложить PostgreSQL, поскольку он известен своей надежностью.

Вы можете проверить следующую ссылку - Боб Ипполито из MochiMedia рассказывает нам, почему они отказались от MySQL для PostgreSQL. Хотя сообщениям уже более 3 лет, проблемы MySQL 5.1 в последнее время имеют тенденцию доказывать, что они по-прежнему актуальны.

http://bob.pythonmac.org/archives/category/sql/mysql/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...