Есть много вопросов "почему бы не ПРИСОЕДИНИТЬ?" здесь, чтобы понять, кто должен использовать mongodb... Но даже руководство в model-embedded-one-to-many-relationships-between-documents не показывать основные подсказки...
Подходы:
-
сгенерируйте массив, содержащий "внедренные данные" соединения, чтобы получить данные "на лету". (используя
find()
и какой еще более простой алгоритм?) -
используйте db.collection.insert для создания "постоянных данных".
Итак, , если я на терминале mongo
, какой самый простой способ сделать это?
пример реального набора данных
В https://github.com/datasets/country-codes у нас есть
-
country-codes.csv: таблица с ~ 250 строками.
-
datapackage.json: сложная структура с метаданными таблиц кодовых таблиц в
resources.schema.fields
.
Итак, прежде чем делать запросы в mongo
в терминале, мы можем выполнить что-то вроде
wget -c https://raw.githubusercontent.com/datasets/country-codes/master/data/country-codes.csv
wget -c https://raw.githubusercontent.com/datasets/country-codes/master/datapackage.json
mongoimport -d ccodes_db -c ccodes --type csv --file country-codes.csv --headerline
mongoimport -d ccodes_db -c ccodes_meta datapackage.json --jsonArray
mongo
show dbs
use ccodes_db
Итак, давайте "присоединяемся" ccodes_meta
к коллекциям ccodes
в mongo
... Задача состоит в том, чтобы вставлять поля name
и description
(of ccodes_meta) в коллекцию ccodes... С простейшими алгоритмами (не требующими максимальной производительности) см. Пункты 1 и 2 вопроса.