2016-08-03 5 views
0

Я оцениваю CouchDB & Мне интересно, можно ли реализовать следующие функции.Может ли CouchDB сделать это?

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

Мои запросы являются следующие:

  1. Можно ли сохранять различные версии одного и того же таблицы, используя CouchDB?
  2. Есть ли альтернатива созданию дочерних таблиц (и загромождать базу данных)?

Я новичок в базах данных NoSQL и оцениваю CouchDB, потому что он поддерживает JSON из коробки, и этот формат, по-видимому, подходит для приложения очень хорошо.

Если есть альтернативы НЕ сохранять производные в виде отдельных таблиц, тем лучше будет приложение. Любые идеи, как я мог бы это достичь?

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

+0

Какое отношение у вас между родительским и дочерним таблицами? Это один, один-много? Обратите внимание, что couchdb - это документально ориентированная база данных. Нет таблиц только документов. – randominstanceOfLivingThing

+0

Hi randominstanceOfLivingThing, Отношения - один ко многим. Пользователь отредактирует родительский документ с лицевой стороны и сможет сохранить изменения в виде отдельных документов. Итак, я отношения 1: много. Затем пользователь будет редактировать дочерний документ для создания производных и так далее. Я начинаю работу с CouchDB, поэтому, пожалуйста, извините меня, если мои запросы очень просты. Еще раз спасибо! – jixtacom

ответ

1

CouchDB - это document oriented database, что означает, что вы не можете говорить в терминах таблиц. Есть только документы. _rev (или идентификатор ревизии) описывает версию document.

In CouchDB, there are 2 ways to achieve relationships.

  1. Используйте отдельные документы
  2. использовать встроенный массиву

Если вы не предпочитаете загромождать базу данных, вы можете использовать опцию (2) с помощью встроенного массива. Это дает вам возможность бесплатно выполнять функции каскадного удаления.

+0

Думаю, я изучу указатели, которыми вы поделились, randominstanceOfLivingThing. Благодаря тонну! Действительно ценю это! – jixtacom

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