ObjectId лучше чем Number в плане скорости поиска и уникальности, если что)
я с этим согласен, но у меня 20к записей в виде реалиционной таблицы, в ручную их вбивать не охота совсем
Кто то меняет на number но это может замедлить работу, возможно в odm таких как монгус можно потерять некоторые возможности (это не точно). Еще, _id сам генерится, можно сохранить старый айди в отдельное поле. Вот ещё из доки инфа https://www.mongodb.com/blog/post/generating-globally-unique-identifiers-for-use-with-mongodb
а ref как делать на этот айди?
Ref через монгус? Никак вроде, но можно через $lookup в аггрегациях
а можно ли вывести через ваш вариант и пере сохранить что бы ref с populate работал ?
Нужно попробовать, я не совсем понимаю, что вы имеете ввиду, языковыми средствами конечно можно пересохранить, просто написать нужный скрипт. Но я советую использовать lookup, вместо populate, это нативный, более шустрый и универсальный вариант
Да я сам пока не понимаю как правильно сделать, просто раньше сидел на mysql и привык к реляционным бд. в mongo я так понял это делается через type: mongoose.Schema.Types.ObjectId и ref
Вообще, в монге желательно это избегать, делать документы денормализованными
Что значит денормализованными? Я поменял данные в одном месте а нужно что бы это отобразилось везде например
Советую почитать мануалы по архитектуре в монге, большое количество populate/lookup замедляют работу монги
почитал и понял что без дубликата и синхронизации не решить мою проблему )
Обсуждают сегодня