ошибка тайм-аута запроса в «Задаче потока данных» - исходная часть SSIS

Я получаю ошибку тайм-аута запроса в «Задаче потока данных» - исходной части SSIS, когда подключение к источнику тераданных является медленным. Запрос - «выбрать * из», а таблица содержит всего 100-200 строк. Я попытался установить Commandtimout на «0», но даже тогда запрос истекает через 30 секунд.

Может ли кто-нибудь помочь увеличить значение тайм-аута в SSIS или уменьшить время выполнения запроса в тераданных?


person Pawan Kumar Jha    schedule 20.12.2011    source источник
comment
Если исходная таблица в Teradata содержит только 200 строк, возникает ли у вас заблокированный сеанс или отложенный сеанс в соответствии с правилами управления рабочей нагрузкой? Что вам говорят администраторы баз данных Teradata? Простой SELECT из 200 строк из базовой таблицы Teradata должен вернуться менее чем за 30 секунд даже в загруженной системе. Вы уверены, что запрашиваете таблицу, а не представление?   -  person Rob Paller    schedule 20.12.2011
comment
спасибо за ответ .. решил проблему, изменив свойства ssis ..   -  person Pawan Kumar Jha    schedule 21.12.2011
comment
@PawanKumarJha, отправьте ответ (не комментарий) с точными шагами, необходимыми для решения проблемы. Сообщество может извлечь выгоду из вашего решения.   -  person Filip Popović    schedule 22.12.2011
comment
Свойство «Тайм-аут команды» не решает задачи. Чтобы это свойство было установлено, мы должны переопределить свойства тайм-аута по умолчанию на уровне SSIS (SQL Server Management Studio). Инструменты-Параметры-Инструменты базы данных-Конструкторы запросов и представлений (-Отменить длительный запрос через n секунд) Конструкторы таблиц и баз данных- ›Параметры таблиц и диаграмм (-Транзакция истекает через n секунд). значение тайм-аута по умолчанию.   -  person Pawan Kumar Jha    schedule 26.12.2011


Ответы (2)


Вы можете увеличить время ожидания запроса для конкретной задачи потока данных следующим образом:

  1. В представлении потока управления выберите задачу потока данных
  2. Перейти к представлению потока данных
  3. Выберите источник данных или цель, для которых нужно изменить время ожидания.
  4. Получить свойства (нажмите F4)

Вы можете установить CommandTimeout на странице свойств.

См. https://forums.teradata.com/forum/connectivity/sql-server-integration-services-ssis-and-timeout-errors

Учитывая ваши особые обстоятельства, изменение тайм-аута может быть неуместным.

person OutstandingBill    schedule 07.01.2016

Это может быть то, как запрос интерпретируется самой системой запросов. Вместо использования «SELECT *» укажите столбцы, которые вы собираетесь использовать; т.е. «ВЫБЕРИТЕ first_name, last_name ...».

  1. Откройте поток данных и дважды щелкните источник.
  2. В режиме доступа к данным выберите команду SQL.
  3. Напишите свой запрос со всеми необходимыми столбцами.
  4. Сохранять.

Возможно, вам придется исправить определения столбцов в потоке, но если метаданные совпадают, вы сможете просто просмотреть и сохранить.

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

person SeanS    schedule 22.02.2016
comment
Я только что понял, что исходному вопросу 4 года. Я оставлю ответ здесь, на случай, если он поможет кому-то еще. - person SeanS; 22.02.2016