Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Использование XML-данных в СУБД - кто-нибудь пробовал?

6.6K
20 июня 2007 года
noff
67 / / 01.08.2006
Суть. Будет много данных в СУБД в формате XML. т.е. будет одна колонка в формате XML, в которой будут ячейки, содержащие XML-документ с множеством параметров. Следовательно нужно будет делать запросы к БД с целью, найти документы, в которых определенные параметры равны требуемым. Ну, т.е. организовать обычный поиск.
Как это скажется на производительности работы в целом? Кто-нибудь знает, как организована работа в СУБД, к примеру MS SQL SERVER или ORACLE 10g, с XML данными? Они ищут, разбирая DOM каждого документа или как-то еще?
10
20 июня 2007 года
Freeman
3.2K / / 06.03.2004
Цитата: noff
ORACLE 10g, с XML данными? Они ищут, разбирая DOM каждого документа или как-то еще?


В Oracle есть два способа работы: c XML-схемой и без. Без схемы данные хранятся как CLOB и разбираются (движок SAX, насколько знаю) каждый раз при обращении к ним. С зарегистрированной XML-схемой данные разбираются один раз - при вставке, после чего хранятся в разобранном виде в объектно-реляционных таблицах (Oracle создаёт их сам при регистрации схемы).

В пакетах для работы с XML реализована вся нужная функциональность, в частности, генерация ветвей и XPath. Последний исполняется напрямую, как разновидность регулярного выражения при обращении к CLOB-XML, или транслируется в объектный запрос при выборке их схемы (в настройках сервера параметр какой-то есть, отвечающий за режим перезаписи запросов - он должен быть включён).

6.6K
21 июня 2007 года
noff
67 / / 01.08.2006
Имеет ли смысл использовать XML для хранения разнородных документов в Oracle, когда приходится постоянно добавлять в базу эти документы (по 30-50 элементов в каждом документе, первоначально до 2000 документов в сутки) и при этом постоянно производить поиск по этим документам? Или все будет работать очень медленно?
10
21 июня 2007 года
Freeman
3.2K / / 06.03.2004
Цитата: noff
Имеет ли смысл использовать XML для хранения разнородных документов в Oracle, когда приходится постоянно добавлять в базу эти документы (по 30-50 элементов в каждом документе, первоначально до 2000 документов в сутки)


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

Цитата: noff
Или все будет работать очень медленно?


Имеет смысл спросить на специализированном форуме по Oracle. Я только теорию разбирал, до практики не дошло дело - уволился с той работы.

Ещё лучше почитать концепции работы с XML в Oracle самостоятельно. Я справился за 3-4 дня. Сам Oracle ставить необязательно - его документации полно расшаренной в Сети. Ищется элементарно через Google.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог