Тип столбца ESE для произвольных объектов XmlSerialize

Какой тип столбца ESE лучше всего подходит для XmlSerialize объекта в моей базе данных ESE?

И "длинный двоичный код", и "длинный текст ASCII" работают нормально.

Причина длинного бинарного файла: абсолютно уверен, что нет разговора персонажей.

Причина длинного текста: XML - это текст.

Похоже, MSDN говорит, что эти два типа отличаются только при сортировке и поиске. Очевидно, я не собираюсь создавать индексы для этого столбца; поля, которые должны быть доступны для поиска и / или сортировки, хранятся в отдельных столбцах соответствующих типов.

Безопасно ли предполагать, что любой текст UTF8, размером менее 2 ГБ, может быть сохранен и загружен из значения столбца ESE "длинный текст ASCII"?

1 ответ

Решение

Да, вы можете поместить до 2 ГБ данных текста UTF8 в любой длинный текстовый / двоичный столбец. Единственная разница между длинным двоичным и длинным текстом заключается в том, что данные нормализуются при создании индекса по столбцу. Кроме этого ESE просто сохраняет предоставленные байты в столбце без преобразования. ESE может индексировать только данные ASCII или UTF16, и приложение должно убедиться, что данные находятся в правильном формате, поэтому было бы правильнее поместить данные в длинный двоичный столбец. Поскольку вы не создаете индекс, на самом деле не будет никакой разницы.

Если вы работаете в Windows 7 или Windows Server 2008 R2, вам следует изучить сжатие столбцов. Для данных XML вы можете получить значительную экономию, просто включив сжатие.

Другие вопросы по тегам