2010-01-19 4 views
1

Я хочу хранить данные динамического характера. Пользователь может создавать формы для сбора данных. Данные могут храниться в различных форматах в соответствии с конфигурацией. Основными из них являются СУРБД и XML-файл. Формат XML-файла довольно легко хранить динамические данные и загружать их обратно.Структура данных для хранения динамических данных

Я не могу создать структуру данных для РСУБД. В настоящее время я храню данные в формате ключевого значения и делаю PIVOT для его получения. Для полей, которые имеют несколько значений, я храню их как CSV в столбце значений.

Есть ли лучший способ для хранения таких динамических данных, которые помогают в производительности и расширяемости?

ответ

0

Не зная больше о приложении, сказать сложно.

Вы можете сохранить данные как XML в BLOB в базе данных. Это означало бы, что все ваши данные (sorta) обрабатывались одинаково (как XML).

Другой подход заключается в изменении структуры базы данных для хранения вложенных данных (что, по-видимому, является вашей проблемой). Поэтому вместо таблицы с прямыми ключевыми значениями вы можете использовать структуру таблицы, которая могла бы ссылаться на себя (например, parent-key-value) и иметь таблицу заголовков для хранения ключей верхнего уровня.

Настоящий вопрос заключается в том, почему вы хотите использовать базу данных для хранения данных. Кажется, что реальная проблема заключается в том, чтобы поместить круглую привязку в квадратное отверстие (или наоборот).

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