2011-01-12 2 views
1

Я использую Nhibernate для своего проекта. Мне было интересно, есть ли какой-либо инструмент/lib, который я могу использовать для резервного копирования/восстановления всей базы данных в XML-формате с помощью Nhibernate.Резервное копирование/восстановление в/из XML с использованием NHibernate

nDBUnit делает то, что я хочу. Но это библиотека тестирования базы данных, и, следовательно, цель другая. Кроме того, для этого используется xxd. То, что я ищу, - это то, что использует hbm-файлы для этого.

Для спящего режима, это ссылка я нашел: Резервное копирование/восстановление в/из XML с помощью Hibernate http://www.jroller.com/ara_e/entry/backup_restore_to_from_xml

Другой «побочный» вопрос: Для «достаточно большой» базы данных, это хорошая идея для резервного копирования в XML-файле?

Любая помощь будет принята с благодарностью.

ответ

1

Если бы у вас была большая база данных, я бы сказал «нет». Раньше я использовал XML для операций импорта/экспорта (например, я реализовал функцию, в которой вы могли экспортировать объект в виде «шаблона», а также импортировать его на какой-либо другой сайт вместе со всеми зависимостями).

Проблема заключается в том, что XML, естественно, взрывает во много раз больше исходных данных, и вам также нужно беспокоиться о согласованности. Собираетесь ли вы получить реальный снимок базы данных в один момент времени? Сколько времени это займет? Если вам удастся получить блокировку чтения на все, это будет одновременно блокировать другие одновременные операции. Это то, что собственная функция резервного копирования вашей базы данных уже учтена.

Аннотация: XML хорош для перемещения данных между разрозненными системами, но резервные копии лучше всего делать из вашего хранилища данных.

+0

Спасибо Скотту. Очень ценю ваш ответ. Все, что я могу использовать для экспорта/импорта определенных объектов? –

+1

@Shuhel Ahmed - вы можете использовать [AutoMapper] (http://automapper.codeplex.com/) для перевода данных в свой объект в DTO, а затем сериализуйте DTO. –

+0

Спасибо, никогда не использовал AutoMapper, но, конечно, попробуем. –

Смежные вопросы