В другом вопросе (How do I copy a collection from one database to another database on the same server using PyMongo?) Я выяснил, как скопировать одну коллекцию MongoDB в другую базу данных на том же сервере. Однако это не копирует индексы в исходной коллекции, так как я могу их скопировать?Как скопировать индексы из одной коллекции в другую коллекцию с помощью PyMongo?
2
A
ответ
2
Таким образом, используя упрощенную установку следующим образом:
from pymongo import MongoClient
client = MongoClient()
client.db1.coll1.insert({'content':'hello world'})
client.db1.coll1.create_index(keys='content')
Мы можем видеть, что это имеет пользовательский индекс:
>>> client.db1.coll1.index_information()
{u'_id_': {u'key': [(u'_id', 1)], u'ns': u'db1.coll1', u'v': 1},
u'content_1': {u'key': [(u'content', 1)], u'ns': u'db1.coll1', u'v': 1}}
Я затем создать вторую коллекцию coll2
путем копирования данных следующим образом:
client.db1.coll1.aggregate([{'$out':'coll2'}])
После этого, похоже, работает для копирования индекса:
for name, index_info in client.db1.coll1.index_information().iteritems():
client.db1.coll2.create_index(keys=index_info['key'], name=name)
Я был обеспокоен тем, что, поскольку coll2
будет уже иметь первичный ключ индекса «_id», это может вызвать ошибку, но это, кажется, работает так же, как что:
>>> client.db1.coll2.index_information()
{u'_id_': {u'key': [(u'_id', 1)], u'ns': u'db1.coll2', u'v': 1},
u'content_1': {u'key': [(u'content', 1)], u'ns': u'db1.coll2', u'v': 1}}
Смежные вопросы
- 1. Как скопировать выбранные документы из одной коллекции в другую с помощью pymongo?
- 2. Как скопировать одну коллекцию из MongoDB с помощью pymongo и вставить в другую пустую коллекцию?
- 3. MongoDB перемещать документы из одной коллекции в другую коллекцию
- 4. Копирование коллекции C# в другую коллекцию
- 5. Копировать (обновлять, если существует) документ из одной коллекции в другую
- 6. Как скопировать коллекцию из одной базы данных в другую базу данных на том же сервере, используя PyMongo?
- 7. Скопировать формулу из одной ячейки в другую с помощью openpyxl
- 8. Скопировать данные из одной таблицы в другую
- 9. MongoDB Как скопировать выбранные строки выборки в другую новую коллекцию
- 10. как вернуть коллекцию из mongodb с помощью pymongo
- 11. Скопируйте содержимое одной коллекции в другую с помощью общей функции
- 12. Как копировать модель из одной коллекции в другую в Backbone.js
- 13. Обновление коллекции в pymongo
- 14. Как скопировать командный проект из одной коллекции в другую с платформой интеграции TFS, TFS2012 в TFS2012
- 15. Как скопировать индексы из одной таблицы в другую в SQL Server
- 16. Сохранить Подмножество MongoDB коллекции в другую коллекцию
- 17. Как скопировать VARBINARY, чтобы скопировать его из одной базы данных в другую с помощью скрипта?
- 18. Вставьте все документы из одной коллекции в другую коллекцию в базе данных MongoDB
- 19. Добавление коллекции в другую коллекцию в backbone.js
- 20. Как скопировать данные из одной таблицы в другую в MySQL?
- 21. Добавление коллекции объектов в другую коллекцию
- 22. Как добавить документы в массив в коллекции с помощью PyMongo
- 23. Списки SharePoint Перемещение из одной коллекции сайтов в другую
- 24. MapReduce в коллекции PyMongo
- 25. Как скопировать данные из одной таблицы в другую в MySQL?
- 26. Копирование коллекции mongo с огромными данными в другую коллекцию?
- 27. Как скопировать таблицу быстро из одной базы данных в другую
- 28. Как я могу скопировать содержимое из одной строки в другую ...
- 29. Реактивные расширения - перекачка предметов из одной коллекции в другую
- 30. Как скопировать функцию из одной топологии в другую?