Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / Microsoft SQL Server 2005 для администраторов
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

10.8. Bulk Insert Task

Bulk Insert Task в SSIS SQL Server 2005, массовая загрузка данных на SQL Server 2005, плоские файлы (flat files)

Bulk Insert Task — это задача, единственное назначение которой заключается в загрузке информации из текстовых файлов с разделителями (flat files) на SQL Server. При этом задача Bulk Insert Task не может производить ни преобразований, ни проверок данных.

Может возникнуть вопрос: а зачем нужна такая задача? Ведь то же самое можно сделать при помощи обычной задачи Data Flow Task и с намного большими функциональными возможностями. Ответ прост: главное преимущество Bulk Insert Task — производительность. В этой задаче используются специализированные программные объекты, оптимизированные для достижения максимальной скорости загрузки данных. Фактически эта задача — оболочка SSIS для утилиты командной строки bcp (bulk copy program), поскольку в ней используются те же объекты. Однако отметим, что bcp умеет как загружать данные на SQL Server, так и выгружать их с SQL Server в файл на диске, а Bulk Insert Task работает только в одном направлении и может только загружать данные на SQL Server.

Отметим также, что Bulk Insert Task — достаточно капризная в практическом использовании задача. По опыту работы с ней можно сказать, что при загрузке данных средствами этой задачи периодически возникают ошибки, связанные, например, с тем, что в текстовом файле встретился какой-то нестандартный символ. Поэтому такую задачу имеет смысл использовать только при очень серьезных требованиях к производительности (когда вам нужно, например, загружать миллионы записей в течение короткого времени). Во всех остальных ситуациях предпочтительнее использовать Data Flow Task.

Настройка Bulk Insert Task очень проста. Она требует наличия двух менеджеров подключений (см. разд. 10.5) — OLE DB Connection Manager (для SQL Server, на который будут загружаться данные) и Flat File Connection Manager (для текстового файла-источника). Кроме того, в свойствах Bulk Insert Task вы можете выбрать таблицу, в которую будет производиться загрузка, кодировку текстового файла источника, разделители строк и столбцов. Дополнительные параметры загрузки данных (например, назначение столбца в исходном файле столбцу таблицы, в которую производится запись, или игнорирование некоторых столбцов файла-источника) можно определить при помощи файла форматирования (он выбирается при помощи параметра Format на вкладке Connections (Соединения) свойств Bulk Insert Task). Формат этого файла описан в документации к утилите bcp (он одинаков для Bulk Insert Task и для этой утилиты), а сгенерировать его в автоматическом режиме проще всего при помощи Bulk Insert Task средствами DTS Designer в SQL Server 2000.

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 
© 2004-2016, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru