SQL 2008 XML хранилище - PullRequest
       1

SQL 2008 XML хранилище

3 голосов
/ 08 сентября 2011

Мы импортируем данные от наших клиентов на наш центральный сервер для целей отчетности. Мы используем службу Windows .net 2, установленную на клиентских компьютерах, которая отправляет данные, извлеченные из приложения, в службу WCF в виде XML. Мы не можем пойти выше .Net 2 на клиентской службе Windows. Мы храним XML в таблице сервера SQL, столбце XML. Затем мы очищаем данные и вставляем их в нужные таблицы.

Однако в xml используются имена столбцов источника данных, который является довольно большим. Таким образом, это сделало XML довольно странным. На данный момент мы используем имена столбцов в качестве имен узлов и данные столбцов в качестве значений узлов. Это приводит к тому, что имя столбца используется как открывающий и закрывающий тег. Мы думали об использовании атрибутов XML, но наша задача - использовать «в данных, которые мы получаем. Но опять же имена столбцов довольно велики, и это все равно создает изрядное количество накладных расходов. Итак, идея заключается в том, чтобы использовать псевдонимы для имен столбцов и использовать атрибуты XML. Это должно значительно снизить накладные расходы.

Что мне было интересно, так это то, что делают другие люди, чтобы обойти подобные проблемы? Также есть какие-либо предложения или лучшие практики в отношении такого рода вещей?

1 Ответ

0 голосов
/ 08 сентября 2011

Я бы вообще не испортил XML.

По сути, имеется некоторое (незначительное) сжатие в типе данных XML с помощью SQL.

Однако, если вам абсолютно необходимо свести к минимуму данные (не беспокоясь о том, что они могут быть расшифрованы без предварительной распаковки), посмотрите на сжатие их с помощью алгоритма типа Zip или Lzh и затем сохраните его в varbinary - this может помочь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...