SSIS с большим объемом данных медленно и плохо работает через Kingswaysoft - PullRequest
2 голосов
/ 14 марта 2020

У нас есть много пакетов служб SSIS, которые обновляют / создают записи в CRM. Некоторые объекты, такие как контакт, учетная запись, продукт клиента (наша пользовательская сущность для хранения всех типов учетных записей), в то время как мы переносим записи, сталкивающиеся с низкой производительностью и высокой загрузкой ЦП на компьютере SQL (имеет 20 процессоров). Но, как правило, для других пользовательских объектов у нас нет никаких проблем или медлительности. И для этой операции мы используем приложение KingswaySoft. Допустим, у меня есть пакет служб SSIS с именем CASA, если я выполню этот пакет с 10.000 данных менее чем за 1 минуту, я смогу завершить свой процесс. Но если я хочу выполнить с 250.000 данных, пакет должен быть завершен через полчаса, но это занимает почти 1,5-2 часа. Мы попробовали комбинации ниже, но ни одна из них не дала хороших результатов для процессора, и все они дали примерно в одно и то же время. Мы не понимаем, почему при меньшем количестве данных все заканчивается так быстро, но не может справиться с большими данными. И мы поняли, что для каждой записи, которую запрос отправляет в businessprocessflow, проверяется, есть ли на нем идентифицированный бизнес-процесс, который также использует много ресурсов ЦП. Но когда вы включили опцию потока бизнес-процессов на объекте, невозможно вернуться назад. Мы используем CRM в -premise.

Поток: 64, Пакет: 250: AutoAdjustBufferSize: True, Макс. Число строк в буфере по умолчанию: 1.000.000, Процессор составил 90 процентов

Поток: 32, Пакет: 250: AutoAdjustBufferSize: True, Макс. Число строк буфера по умолчанию: 1.000.000, ЦП было около 90 процентов

Поток: 20, Пакет: 250: AutoAdjustBufferSize: True, Макс. Ряд буферов по умолчанию: 1.000.000, ЦП было около 80 процентов

Поток: 40, Пакет: 100: AutoAdjustBufferSize: True, Макс. Число строк в буфере по умолчанию: 1.000.000, ЦП был около 80 процентов

Поток: 20, Пакет: 250: AutoAdjustBufferSize: False Default Buffer Max Rows: 400.000, DefaultBufferSize: 50.000.000 CPU был около 80 процентов

Есть опция, называемая Engine thread, по умолчанию она установлена ​​в 10, мы пытались уменьшить ее до 1,2, ничего не изменилось .

1 Ответ

1 голос
/ 16 марта 2020

Производительность может зависеть от многих факторов, таких как задержка в сети, конкретный экземпляр, с которым вы работаете, объем данных, плагины или рабочие процессы и т. Д. c. Вы можете попробовать наши различные варианты и посмотреть, поможет ли это, но учтите, что это будет зависеть от вашей конкретной среды и организации, с которой вы работаете, поскольку это может отличаться в разных случаях. У нас нет стандартных инструкций как таковых, но у нас, безусловно, есть некоторые рекомендации. Вы можете взглянуть на нашу страницу часто задаваемых вопросов, чтобы узнать больше предложений: https://www.kingswaysoft.com/products/ssis-integration-toolkit-for-microsoft-dynamics-365/help-manual/crm/advanced-topics

Вы также можете включить прокси-сервер типа Fiddler или использовать журналы трассировки CRM для узнайте, где находится узкое место. Для работы с журналами трассировки вам необходимо сделать это на стороне сервера CRM.

Дайте нам знать, если есть что-то, чем мы можем вам помочь, и не стесняйтесь обращаться к нашей группе поддержки напрямую. .

...