Я думаю, что вы, возможно, неправильно понимаете природу "баз данных документов".Поэтому я бы порекомендовал MongoDB, который является базой данных документов, но я думаю, вам понравится.
MongoDB хранит «документы», которые в основном являются записями JSON.Самое интересное в том, что он понимает внутренности документов, которые он хранит.Таким образом, с учетом документа, подобного этому:
{
"name": "Gregg",
"fave-lang": "Scala",
"fave-colors": ["red", "blue"]
}
Вы можете запросить "fave-lang" или "fave-colors".Вы даже можете индексировать любое из этих полей, даже массив «fave-colors», что потребует многотарифной реляционной земли.
Play предлагает плагин MongoDB, который я не использовал.Вы также можете использовать драйвер Casbah для MongoDB , который я использовал очень хорошо и отлично.DSL-запрос Rogue для MongoDB, написанный FourSquare, также стоит посмотреть, если вам нравится MongoDB.
MongoDB чрезвычайно быстр.Кроме того, вы избавите себя от необходимости писать схемы, потому что любая запись может иметь любые поля, которые вы хотите, и они по-прежнему доступны для поиска и индексации.Ваша модель данных, вероятно, будет выглядеть так же, как и сейчас, с «коллекцией» пользователей (например, таблицей) и другими коллекциями с записями, ссылающимися на ID пользователя по мере необходимости.Но если вам нужно добавить поле в одну из ваших коллекций, вы можете сделать это в любое время, не беспокоясь о старых записях или переносе данных.Технически нет никакой схемы для записей MongoDB, но вы в конечном итоге организуете подобные записи в коллекции.
MongoDB - одна из самых забавных технологий, с которыми мне приходилось сталкиваться в последние несколько лет.В ту счастливую субботу я решил проверить это и через 15 минут был продуктивным и почувствовал, что «получил».Я регулярно даю демонстрацию на работе, где я показываю людям, как начать работу с MongoDB и Scala за 15 минут, включая установку MongoDB.Бесстыдный плагин, если вы пользуетесь веб-сервисами, вот мой пост в блоге о начале работы с MongoDB и Scalatra с использованием Casbah: http://janxspirit.blogspot.com/2011/01/quick-webb-app-with-scala-mongodb.html
По крайней мере, вы должны перейти к http://try.mongodb.org
Это то, с чего я начал.
Удачи!