Мне нравится MongoDB и я его часто использую, но я считаю, что если вы имеете дело с реляционными данными, вам следует использовать для этого подходящий инструмент.Для этого у нас есть реляционные базы данных.Mongo и Couch являются хранилищами документов.
Монго имеет серьезный недостаток, если вы собираетесь поддерживать много ссылок между документами.Записи гарантированно будут атомарными для одного документа.Таким образом, вы можете иметь противоречивые обновления для отношений, если вы не будете осторожны со своей схемой.
Хорошая вещь о MongoDB в том, что он очень хорош в масштабировании.Вы можете осколок и создавать наборы реплик.Foursquare в настоящее время использует MongoDB, и он работает очень хорошо для них.MongoDB также выполняет сокращение карт и имеет достойную геопространственную интеграцию.Команда, которая разрабатывает MongoDB, превосходна, и я живу в Нью-Йорке, где они базируются и встречались с ними.У вас, вероятно, не будет проблем с масштабированием, хотя я бы подумал, что начинаю.
Что касается переключения диаспоры ... Я бы не хотел следить за тем, что они делают:)
Ваш комментарийо графе dbs интересно, хотя.Вероятно, я бы также не использовал графическую БД в качестве своей основной БД, но при работе с отношениями вы можете делать с ними удивительные вещи.Фактически, обычно демонстрация, которую вам дадут ребята из компаний, работающих с графическими БД, - это извлечение знаний об отношениях из социальной сети.Однако ничто не мешает вам поиграть с ними в будущем для сетевого анализа.
В заключение, когда вы начинаете здесь, вы еще не сталкиваетесь с проблемами массового масштаба и, вероятно, ограниченывовремя и деньгами.Имейте в виду, что даже Facebook не использует только одну технологию, они в основном расширены до NoSQL для определенных функций (таких как обмен сообщениями Facebook).Ничто не помешает вам в будущем использовать скажем Mongo и gridFS для обработки загрузки изображений, геолокации и т. Д. Это хорошо для роста, когда ваши потребности меняются.Я думаю, что ваше интуитивное чувство, что у вас есть приложение SQL здесь, является правильным, и преимущества, полученные с MongoDB, не будут реализованы какое-то время.