Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
Коллеги, проблема. Есть процедура, которая циклом вставляет данные в таблицу MSSQL 2014 Developer. За одну итерацию 12-40к строк. Всего процедура обрабатывает ~90 млн строк за 48 минут. В таблице для вставки нет индексов, у базы модель восстановления Simple. В плане запроса ~80% ресурсов приходитcя на этот insert. Уже делал: 1). Секционирование таблицы, в которую вставляются данные, по годам с параллельным запуском этой процедуры с разными диапазонами дат. 2). Перевод этой таблицы в InMemory. Помогло слабо. Что еще можно попробовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 11:38 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
ondorsal, Референсы есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 11:41 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
ondorsalу базы модель восстановления Simple.ondorsalЧто еще можно попробовать?insert с минимальным журналированием. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 11:55 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
TaPaK, текст процедуры. Reference в ней нет. Код: sql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 12:07 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
ondorsalКоллеги, проблема. Есть процедура, которая циклом вставляет данные в таблицу MSSQL 2014 Developer. За одну итерацию 12-40к строк. Всего процедура обрабатывает ~90 млн строк за 48 минут. В таблице для вставки нет индексов, у базы модель восстановления Simple. В плане запроса ~80% ресурсов приходитcя на этот insert. Уже делал: 1). Секционирование таблицы, в которую вставляются данные, по годам с параллельным запуском этой процедуры с разными диапазонами дат. 2). Перевод этой таблицы в InMemory. Помогло слабо. Что еще можно попробовать? Загружайте в InMemory несколькими параллельными потоками. На одном потоке выигрыша не увидите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 12:13 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
ondorsal, автор текст процедуры действительно, дело во вставке... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 12:17 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
Попробуйте что-то такое: Код: sql 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. 71. 72. Плюс вечный вопрос: какие индексы на той таблице из которой вы данные выгребаете? По хорошему должен быть индекс по полю YMD на первом месте и остальное как часть кластерного индекса либо в INCLUDED ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 13:34 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
AlanDenton, индексы такие Код: sql 1. 2. 3. 4. 5. 6. 7. 8. Код: sql 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 14:23 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. местами поменяйте и радуйтесь) ибо предикейт пушдаун работать не будет + почитайте за TraceFlag 610 (хотя мне кажется что проблема у вас как раз из-за лишних IndexScan-ов на TempFact) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2018, 14:30 |
|
||
|
Ускорение insert в таблицу
|
|||
|---|---|---|---|
|
#18+
dvimondorsal, Я бы шел в сторону bcp или Tabled параметров. Быстрее этого в природе ничего нет. А bcp может работать с таблицами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2018, 07:43 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39738590&tid=1688704]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
| others: | 261ms |
| total: | 414ms |

| 0 / 0 |
