Связанные объекты в CouchDB - PullRequest
7 голосов
/ 06 февраля 2010

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

Может кто-нибудь объяснить, как я должен хранить, скажем, иерархию категорий?

в реляционной БД, я бы имел:

Категория:
CategoryId
ParentCategoryId
Имя

или что-то в этом роде ..

1 Ответ

2 голосов
/ 06 февраля 2010

Вы можете начать с того же подхода, что и с реляционными базами данных: создать отдельный документ для каждой категории и сохранить ссылку на родительскую категорию.

Если вы хотите запросить целое поддерево или хлебные крошки одним запросом, вы должны поддерживать поле массива, содержащее все ключи предка. Затем вы можете создать представление, которое проходит через предков и генерирует [ancestor_key, doc] для запроса поддерева. Чтобы получить данные о хлебных крошках для категории, выполните массовый запрос по идентификаторам предков.

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