2015-04-01 2 views
0

Добрый день. Необходимо получить записи из базы данных Oracle в базу данных на SQL Server. Тип источника данных (ODBC), выполненный с использованием команды SQL, где я беру все возможные индексы в соответствии с моим требованием. Процесс работает нормально, проблема в том, что это занимает много времени, и мне нужно быть чем-то быстрым. Процесс не может выполняться с помощью поиска, требует объединения или объединения, просто загружайте таблицу из Oracle в SQL при определенных условиях.Как оптимизировать загрузку данных на сервер в SSIS

Благодарим за помощь.

+0

Какая часть этого является причиной медленного движения? –

ответ

0

Проверьте, в чем ваш лимитирующий фактор. Обычно есть 3 пункта для проверки:

  1. Удаленный сервер работает медленно. Исходная БД может работать с низкой памятью, скоростью чтения или свободным процессором. Подставьте запрос с помощью прямого предложения SELECT без предложения WHERE или JOIN s и проверьте, работает ли ваш пакет SSIS быстрее.

  2. Целевая БД. Возможно, у вас есть индексы, высокая латентность записи на жестком диске или недостаточно процессор. Запустите INSERT для вашего целевого стола и посмотрите, сколько времени потребуется.

  3. Проблема может быть посередине: передача между двумя серверами. Сеть обычно является основным узким местом. SSIS размещен на том же сервере, что и SQL-сервер? то у вас есть 2 сетевых подключения + возможное узкое место на специализированной машине SSIS.

В зависимости от узкого места существуют различные решения.

Если у вас есть пропускная способность сети и узкое место - 1 процессор на запрос в Oracle, то вы можете разделить данные по горизонтали (от 1 до 100, от 101 до 200 и т. Д.); установить несколько соединений с Oracle и загрузить данные в нескольких потоках. Количество потоков на 1 меньше, чем количество процессоров на Oracle, SSIS или SQL Server (что когда-либо меньше).

+0

Серверы Oracle и SQL находятся на разных компьютерах. мой компьютер имеет необходимую емкость, а SQL-фильтра фильтра лучше, включая индексы. Благодаря! –

+0

Если я прочитал ваш комментарий, так как оба сервера и ваш компьютер не работают на максимальной емкости, по крайней мере, на 1 ресурс (IO, RAM, процессорный поток - не общий процессор!), То ваша сеть является узким местом. Существуют ограничения по умолчанию в пакете SSIS для размера партии. Проверь их. Если вы хотите сделать это быстрее - вам нужно найти узкое место. – Stoleg

Смежные вопросы