Как создать свою локальную базу данных C#

Условно задача такая: есть паллет, в нем гофрокороба, а в каждом из них находятся упаковки с лекарствами. Информацию с производства этих паллет надо хранить в моей базе данных. На мой сервер поступает информация об этих паллетах в виде Xml дерева со всеми вложенностями (у каждой паллеты есть свой уникальный номер, у каждого вложенного гофрокороба есть тоже свой уникальный номер). Я до этого хранил этот Xml дерево просто в виде строки в текстовом файле, что занимало много места.

У меня вопрос: как лучше хранить эти данные в меньшем объеме? Мне подсказали надо создать свою базу данных, с сохранением вложенностей. Может Excel или создать свои таблицы в файлах например?


Ответы (1 шт):

Автор решения: rotabor

Нужно подумать, какая информация в XML лишняя. Очевидно, что XML содержит не только полезную информацию, но и описание её структуры. Это - первый кандидат на оптимизацию. Если структура данных постоянная или есть несколько постоянных структур, то её (их) нужно сохранить отдельно или даже можно сделать это в коде программы, а из сохраняемых данных исключить.

Второй кандидат на оптимизацию - это постоянные строковые значения, которые можно заменить числами. Здесь даже необязательно знать заранее все значения - встретил новое и добавил его в словарь.

Третий способ оптимизации - хранение данных в бинарном виде. Например, даты, числа. Это значительно экономит место и избавляет от проблем с локализацией и т. п.

→ Ссылка