Хранить данные аудита XML в файловой системе или в таблице MS Access?
Моя программа должна начать аудит сохраненных данных XML для пользователей. Всякий раз, когда пользователь нажимает "Сохранить"; Мне нужно вставить его текущие данные (сериализованные в XML) и сохранить их где-нибудь. Какой вариант лучше:
- Создание текстового файла и удаление всех XML там. (Создание нового текстового файла за сохранение)
- Использование таблицы в MS Access
Я использую.Net 2.0 / MS Access 2003
1 ответ
Преимущество использования таблиц в любой СУБД перед хранением файлов:
- возможность запрашивать / добывать данные впоследствии с запросами
- возможность резервного копирования данных транзакционно
При наличии XML-файлов в файловой системе вам нужно будет разработать стратегии "уникального именования файлов" и преодолеть ограничения на количество файлов, которые можно хранить в папке и т. Д.
В некоторых СУБД Xml является типом данных первого класса (к сожалению, не для MS Access), поэтому:
- Можно запросить ваш Xml, используя XPath, например, используя XQuery.
- Во многих СУБД (например, Sql Server) также возможно создавать индексы в Xml для повышения производительности вышеупомянутых запросов.
Однако в Access вам нужно будет сохранить в поле Memo, с максимальным размером документа 1 ГБ в Access 2010.
TL; DR: если вы уже используете базу данных, сохраните в ней Xml.