|
|
|
помогите спланировать процесс загрузки xml файлов в базу.
|
|||
|---|---|---|---|
|
#18+
добрый день! Есть задача ежемесячно загружать обновление ЕГРЮЛ в базу данных. Обновления присылают в виде однотипных XML файлов. Каждый файл раскладывается на 16 таблиц. Изначально была мысль описать EXTERNAL TABLE TYPE ORACLE_LOADER, и загрузку INSERT ALL в 16 целевых таблиц. Но структура XML не совсем табличная, и пришлось отказать. Сейчас пробую вариант 16 view с запросами вида XMLTable SELECT .. FROM ( '/EGRUL_UL_DATA/UL' PASSING XMLTYPE(BFILENAME('EGRUL_DIR', 'egrul.xml'), NLS_CHARSET_ID('CL8MSWIN1251')) COLUMNS А после этого выгружать данные в целевые таблицы используя INSERT /*+ APPEND */ Хотелось бы вести обработку каждого файла в одной транзакции, т.e commit после загрузки 16-й таблицы. На момент загрузки отключаю ref constraint, триггеров на таблицах нет. Первый insert проходит нормально, на второй пишет SQL Error: ORA-12840: невозможен доступ к удаленной таблице после транзакции параллельной/вставляемой прямой загрузки 12840. 00000 - "cannot access a remote table after parallel/insert direct load txn" *Cause: Within a transaction, an attempt was made to perform distributed access after a PDML or insert direct statement had been issued. Т е доступ XMLTABLE - remote table? Есть воркараунд для этого ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:46 |
|
||
|
помогите спланировать процесс загрузки xml файлов в базу.
|
|||
|---|---|---|---|
|
#18+
если есть возможность представить содержимое файла в виде xmltype то можно все представить в виде pl/sql блока примерно так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2016, 16:21 |
|
||
|
помогите спланировать процесс загрузки xml файлов в базу.
|
|||
|---|---|---|---|
|
#18+
blackmaccommit после загрузки 16-й таблицы.либо коммит, либо директ пафос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2016, 17:22 |
|
||
|
помогите спланировать процесс загрузки xml файлов в базу.
|
|||
|---|---|---|---|
|
#18+
blackmac, Планируется ли у вас историю сохранять? Проверку качества данных в файле проверяете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2016, 07:40 |
|
||
|
помогите спланировать процесс загрузки xml файлов в базу.
|
|||
|---|---|---|---|
|
#18+
blackmac, И сразу интересно, данные получаете напрямую от ФНС или из другого источника? От ФНС по многим недавно зарегистрированным просто не приходит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2016, 07:46 |
|
||
|
помогите спланировать процесс загрузки xml файлов в базу.
|
|||
|---|---|---|---|
|
#18+
kaldoreyblackmac, Планируется ли у вас историю сохранять? Проверку качества данных в файле проверяете? История - накапливается. kaldoreyblackmac, И сразу интересно, данные получаете напрямую от ФНС или из другого источника? От ФНС по многим недавно зарегистрированным просто не приходит Вот источник этих xml файлов мне не известен к сожалению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 12:30 |
|
||
|
помогите спланировать процесс загрузки xml файлов в базу.
|
|||
|---|---|---|---|
|
#18+
Dmitry.если есть возможность представить содержимое файла в виде xmltype то можно все представить в виде pl/sql блока примерно так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. А можно поподробней, не сталкивался с этим. На каком этапе производится запрос из файла ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 12:33 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=192&tid=1887097]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 371ms |

| 0 / 0 |
