powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Пухнет PGA при формирование XML
9 сообщений из 9, страница 1 из 1
Пухнет PGA при формирование XML
    #39957256
istasv89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!

Подскажите, столкнулся с проблемой при формирование XML, пухнет PGA.
Выгружаемый набор 10000 строк +-50 колонок.

XML формирую через пакет DBMS_XMLDOM.
после каждого заполнения выполняю DBMS_XMLDOM.FREENODE
после DBMS_XMLDOM.WRITETOCLOB (DOC, L_CLOB); выполняю DBMS_XMLDOM.FREEDOCUMENT (doc);

отъедает почти 500MB
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957285
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из каких соображений вы решили, что это много?
Да, обработка иерархических данных требует ресурсов. Каких - зависит от реализации кода СУБД и от самих данных.
У меня лет 7 назад в одном проекте вылетала ошибка о нехватке ресурсов где-то на 50 тыс. условных "строк", там структура была где-то 2-3-х-уровневой.
Поскольку код СУБД мы поменять не можем, остается изменить подход к данным, либо выделять больше ресурсов. SGA/PGA я тогда менять не стал.
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957286
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кроме того, рекомендую переходить к более современным, наглядным XMLTable, XMLSequence, XPath.
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957297
istasv89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dmdmdm,

Она должна высвобождаться после выполнения кода?
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957310
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmdmdm
Кроме того, рекомендую переходить к более современным, наглядным XMLTable, XMLSequence, XPath.
Ты формирование XML от парсинга XML отличаешь?
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957358
Maxim Demenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
istasv89,

У меня был года 3 назад один проект - нужно было выписывать XML большими файлами - гдето около миллиона записей на один документ - раздували PGA до 32 Гб и все валилось к черту - DBMS_XMLDOM строит дерево очень неэффективно ( по крайней мере для больших объемов ) . Так как мне дерево не нужно было, я плюнул на это дело и написал свой стримрайтер (практически содрал с https://github.com/filipsalomonsson/streamxmlwriter/blob/master/streamxmlwriter.py ) - отработало на пять баллов. Работы там набросать на PLSQL - на полчаса .

Regards
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957463
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Она должна высвобождаться после выполнения кода?

По идее, да. Но нужно проверять.

формирование XML от парсинга XML

My bad.
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957465
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBMS_XMLDOM строит дерево очень неэффективно L

Кстати, да, вспомнил теперь.

Свыше 50 тыщ строк (а надо было миллионы) я отказался от использования DBMS_XMLDOM, и сделал конкатенацию строк.
...
Рейтинг: 0 / 0
Пухнет PGA при формирование XML
    #39957482
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно где-то "в конце" добавить вызов dbms_session.free_unused_user_memory
но степень её полезности для данного случая - не знаю, надо проверять.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Пухнет PGA при формирование XML
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]