Ответ 1
Этот вопрос может быть очень близок к субъективному (хотя это действительно не так), вы говорите о NoSQL, как будто это всего лишь одно, и это не так.
У вас есть
- графические базы данных (Neo4j и т.д.),
- карта/сокращение файлов документов стиля (Couch, Raven),
- базы данных документов, которые пытаются чувствовать себя как обычные базы данных (Mongo),
- Хранилища ключей/значений (Cassandra и т.д.)
- moar идет здесь.
Каждый из них пытается решить другую проблему с помощью разных средств и будет ли вы использовать один из них в традиционном хранилище реляций:
- Вопрос пригодности
- Вопрос личного предпочтения
В конце дня для хранения данных первичного для одной системы база данных документов или реляционное хранилище, вероятно, вы хотите, хотя для разных частей вашей системы вы вполне можете в конечном итоге используйте базу данных графа (для расчета соседей и т.д.) или хранилище ключей/значений (например, Facebook сделал/сделал для сообщений в почтовом ящике).
Основное преимущество выбора хранилища документов в качестве основного хранилища по сравнению с реляционным, заключается в том, что вам не нужно беспокоиться о попытке сопоставить свои объекты в коллекции таблиц, а также меньше накладных расходов на конфигурацию при этом.
Другим недостатком/потенциалом будет то, что вам нужно узнать что-то новое и совершить ошибки на этом пути.
Итак, мой ответ, если я буду прямым?
- RavenDB будет подходящим
- SQL будет подходящим
Что вы предпочитаете использовать? В эти дни я, вероятно, просто поеду на Raven, зная, что я могу сбросить данные в реляционный магазин для целей отчетности и, вероятно, сделать то же самое и для других частей моей системы, а также получить бесплатный текстовый поиск и fastish-write/fast-reads без необходимости благодаря усилению определения отдельных магазинов чтения/записи является общей победой.
Но это я, и я предвзятый.