
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
09.06.2017, 17:54
|
|||
|---|---|---|---|
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
Задача: быстро выгружать из Оракла 11.2 большие объемы данных (10-ки гб/сут) в TEXT/CSV У Кайта https://asktom.oracle.com/pls/apex/f?p=100:11:::NO::P11_QUESTION_ID:88212348059 в порядке возрастания скорости значатся способы: utl_file sql*plus spool pro*C program = https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:459020243348 на промышленном сервере sql*plus spool простого селекта (одна многогигабайтная таблица без условий) дает всего 5 мбайт/сек, при этом: - копирование файлов по сети между теми же машинами дает в 10 раз больше, т.о. проблема не в сети - CTAS из исходной таблицы в другую проходит за секунды вопросы: 1) это много или мало (какая скорость у вас)? 2) как найти узкое место (кто виноват? оракл или пишущий клиент) и что сделать, чтобы скорость увеличить? 3) вы знаете способы быстрее перечисленных? может быть, CTAS в external table (datapump)? GoldenGate и прочие средства "нечитать из Оракла" не предлагать по условиям задачи ;) также тестирование показывает, что несколько одновременно запущенных sql*plus spool дают суммирование скорости (3 сессии - в 3 раза быстрее и т.д.) +отсюда вопрос: 4) возможно ли неким автоматизированным способом разрезать один набор данных и выгружать его многими сессиями сразу (например, первая сессия берет первые строки, вторая - вторые и т.д.) тупой вариант реализации: раз внутри сервера переливка быстрая - сделать "временную" таблицу с партицированием на нужное кол-во секций, а перед выгрузкой ее очищать и заполнять новым, затем запускать много выгружалок по числу партиций какие еще? pipelined функция это может сделать без материализации, например? как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.06.2017, 18:01
|
|||
|---|---|---|---|
|
|||
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
Alexus12, Дьявол кроется в деталях Покажи скрипт выгрузки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.06.2017, 18:02
|
|||
|---|---|---|---|
|
|||
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
Alexus12, Какая система, какая fs куда вываливается spool ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.06.2017, 18:04
|
|||
|---|---|---|---|
|
|||
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
Очередность не очень правильная Как правило, SQL*Plus на сервере с ARRAYSIZE 100-1000 быстрее всего ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.06.2017, 18:06
|
|||
|---|---|---|---|
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
вывод на экран в sqlplus отключил? чем проблема саму выгрузку вручную по условию распараллелить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2017, 10:55
|
|||
|---|---|---|---|
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
скрипт выгрузки sqlplus такой Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. система - линуксы везде есть соображения по автоматизированному распараллеливанию (п.4 первого сообщения)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2017, 11:01
|
|||
|---|---|---|---|
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
Alexus12 Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2017, 11:35
|
|||
|---|---|---|---|
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
Elic, прошу пояснить зачем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2017, 11:37
|
|||
|---|---|---|---|
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
на п.4 "возможно ли неким автоматизированным способом разрезать один набор данных и выгружать его многими сессиями сразу" найден такой ответ: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2017, 12:57
|
|||
|---|---|---|---|
Как быстро выгрузить из Oracle в TEXT/CSV |
|||
|
#18+
Alexus12скрипт выгрузки sqlplus такой Код: plsql 1. 2. 3. 4. Вот прямо так и написано SELECT * FROM ... ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&tablet=1&tid=1885732]: |
0ms |
get settings: |
9ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
195ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 488ms |

| 0 / 0 |
