2013-03-07 3 views
1

Возможно ли сделать «глубокий» экспорт, используя mongoexport, и разрешить любой возможный DBRef для какого-либо другого объекта в базе данных mongo?mongodb и «deep» mongoexport

Пример:

позволяет сказать, что один из моих коллекций «приложение» содержит документ со свойством:

{ 
    "service" : DBRef("service", NumberLong(1)) 
} 

Возможно ли mongoexport сделать какой-то глубокий экспорт разрешения этой dbref к реальному объекту с его базовой информацией вместо того, чтобы выходить из нее, как следует в json-файле:

"service" : { "$ref" : "service", "$id" : 1 } 

благодарит заранее!

ответ

1

, к сожалению, в настоящее время MongoDB не реализует его, он будет экспортировать данные в виде CSV или JSON, на самом деле он будет использовать расширенную реализацию JSON: http://docs.mongodb.org/manual/reference/mongodb-extended-json/

Он представляет DBRef в data_ref: http://docs.mongodb.org/manual/reference/mongodb-extended-json/#data_ref

С уважением, Мейси

1

Database References (aka DBRefs) - это только условное условное соглашение в MongoDB и не имеет (как и в MongoDB 2.4) специальной поддержки на стороне сервера для заполнения ссылок.

Многие драйверы приложений или фреймворки имеют support for working with DBRefs, но делают это, создавая дополнительные запросы для получения ссылочных документов.

Если вы хотите заполнить DBRefs при экспорте данных, вам придется написать собственный сценарий экспорта.

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