2015-03-30 4 views
0

Мне нужно создать задачу в SSIS, чтобы принести мне несколько записей, которые повторялось определенное количество раз (например, идентификатор присваивал несколько функций). Таблицы, в которых я консультируюсь, имеют миллионы записей и поиск SSIS, возвращают только одну запись меня, то есть когда она находит первое совпадение. Остальные отброшены.Задача SSIS возвращает несколько результатов

Объединение слияния не представляется возможным, так как это может занять часы. Надеюсь, я не могу отфильтровать результат для resutlados.

Я должен принести записи из таблицы в Oracle и сравнить идентификаторы с сервера SQL и пусть записи, которые удовлетворяют условию в полном объеме (все), а не частично (только один)

Соединить (внутреннее соединение) должен быть между двумя таблицами, первый имеет 10 строк, а второй - 84 миллиона строк. Результат должен быть вставлен в полностью пустой столик

+0

Концептуальна, ваш основной источник данных будет вполне SalesOrder Таблица. Затем вам нужно получить все связанные строки SalesOrderDetail на основе SalesOrderId? – billinkc

+0

Точно. Я должен принести записи из таблицы в Oracle и сравнить идентификаторы с SQL-сервером и позволить записи, которые удовлетворяют условию в целом (все), а не частично (только один) –

+0

Сколько строк вы говорите в двух исходных таблицах/запросы? – billinkc

ответ

0

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

Если это соответствует вашим требованиям бизнеса, вы можете использовать временные таблицы и слияние заявление, которое может быть во много раз быстрее, чем при использовании Merge Регистрации потоков данных задачи: https://technet.microsoft.com/en-us/library/cc280522(v=sql.110).aspx

+0

Но задача поиска - это синхронный компонент. 1 строка ввода = 1 строка вывода. Им нужна задача поиска 1: много, которая является вызовом здесь – billinkc

+0

Ах, я принял это: «выполнить условие целиком (все), а не частично (только одно)», чтобы означать, что ему нужны все столбцы для соответствия, а не только столбца идентификатора. Но, возможно, он подразумевает, что ему нужны все записи, как в отношениях от одного до многих, как вы предлагаете. – TPhe

+0

Проведенные тесты и, если угодно, вы прокомментировали. Спасибо! –

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