Допустим, в mongodb есть коллекция пользователей с миллионами документов.Он имеет живые данные.Документ в коллекциях пользователей содержит данные о пользователях, заказах и продуктах.Теперь есть 3 новых клиента коллекции, заказов и продуктов.Требование состоит в том, чтобы переместить данные, относящиеся к пользователю, заказам, продуктам, представленным в коллекции пользователей, в три отдельные коллекции с именами клиентов, заказов и коллекции продуктов соответственно.
Документ в коллекции пользователей выглядит следующим образом:
{
"_id": ObjectId("5c46b1ffb24b455dbe97c6e7"),
"customerId": "ecf178",
"name": "John",
"contact": "johnsmith@gmail.com",
"country": "USA",
"orders": [
{
"orderID": "2761105175647575",
"orderDate": "2018-04-24",
"shippedDate": "2018-04-24",
"discount": 200,
"price": 1200
}
],
"products": [
{
"productId": "2761105175647575",
"unitPrice": 1400,
"productName": "FAN",
}
]
}
Теперь я должен переместить поля customerId, name, contact в коллекцию " потребителей ".
Данные, присутствующие в заказах в документе коллекции пользователей, должны быть перемещены в Заказы Коллекция.Аналогично, данные в разделе «Продукты» в документе «Коллекция пользователей» необходимо переместить в коллекцию « Продукты * 1015».
Может кто-нибудь предложить лучший подход для переноса данных в реальном времени из одной коллекции в три новой коллекции.Во время переноса данных мы должны следить за тем, чтобы новые входящие данные в коллекции пользователей также переносились.Также во время миграции есть несколько новых полей, таких как uniqueId, которые будут являться своего рода значением UUID, сгенерированным системой, также необходимо добавить в новую коллекцию.Эти новые поля отсутствуют в существующих коллекциях пользователей.
Я также открыт для использования любой доступной на рынке утилиты, которая может сделать эту работу за меня.
Примечание. Здесь источником данных источника и получателя является только mongodb.