Какие есть варианты для миграции / обновления схемы MongoDB?
У нас (моих коллег и меня) есть несколько большой (~ 100 миллионов записей) ) Коллекция MongoDB. Эта коллекция сопоставлена (ORM'd) с объектом Scala lift-mongodb, который прошел через несколько различных итераций. У нас есть всевозможный код, который обрабатывает недостающие поля, переименовывает, удаляет, переносит и т. Д.
Насколько вся эта вещь «без схемы» может быть приятной и гибкой, в данном случае она вызывает много беспорядка в коде, поскольку наш объект продолжает развиваться. Продолжать идти по этому пути «гибкого объекта» просто невозможно.
Как вы, ребята, реализовали миграцию / обновление схемы в MongoDB с помощью Scala? Существуют ли рамки для этого? Я знаю, что Foursquare использует Scala с MongoDB и Rogue (их собственный запрос DSL) ... кто-нибудь знает, как они справляются со своими миграциями?
Спасибо.