Основные рекомендации по массовому импорту данных
Изменения: 12 декабря 2006 г.
Примечание. |
---|
Массовый импорт данных в удаленную таблицу не поддерживается. |
При массовом импорте данных из файла данных в экземпляр Microsoft SQL Server следует руководствоваться следующими правилами.
- Получите необходимые разрешения для учетной записи пользователя.
Учетная запись пользователя, от имени которой выполняются программа bcp, инструкции BULK INSERT или INSERT... SELECT * FROM OPENROWSET(BULK...), должна иметь соответствующие разрешения для таблицы (назначаемые владельцем таблицы). Дополнительные сведения о необходимых для каждого метода разрешениях см. в разделах Программа bcp, OPENROWSET (Transact-SQL) и BULK INSERT (Transact-SQL). - Используйте модель восстановления с неполным протоколированием.
Данное правило относится к базам данных, использующим полную модель восстановления. Эта модель восстановления полезна при выполнении массовых операций в неиндексированной таблице (куче). Восстановление с неполным протоколированием позволяет избежать переполнения журнала транзакций, поскольку при этом не выполняется операция записи в журнал для вставок отдельных строк. Дополнительные сведения о модели восстановления с неполным протоколированием см. в разделе Резервное копирование с использованием модели восстановления с неполным протоколированием.
Рекомендуется настроить базу данных на использование модели восстановления с неполным протоколированием до операции массового импорта. Сразу же необходимо переключить базу данных на полную модель восстановления. Дополнительные сведения см. в разделе Особенности переключений между моделью полного восстановления и моделью восстановления с неполным протоколированием.Примечание. Дополнительные сведения об уменьшении объемов ведения журнала при выполнении массовых операций см. в разделе Предварительные условия для минимального ведения журнала массового импорта данных. - Резервное копирование после массового импорта данных.
Для баз данных, использующих простую модель восстановления, после выполнения операции массового импорта рекомендуется создание полной или разностной резервной копии. Дополнительные сведения см. в разделе Создание полных и разностных резервных копий базы данных SQL Server.
Чтобы произвести полное восстановление или восстановление с неполным протоколированием, достаточно создать резервную копию журнала. Дополнительные сведения см. в разделе Создание резервных копий журналов транзакций. - Удаление индексов таблиц для улучшения производительности при выполнении больших операций массового импорта.
Данное правило справедливо при импорте большого объема данных по сравнению с объемом данных, уже находящимся в таблице. В этом случае удаление индексов из таблицы до выполнения операции массового импорта позволит существенно повысить производительность.Примечание. Однако если меньший объем загружаемых данных уже находится в таблице, то удаление индексов, наоборот, понизит производительность. В этом случае восстановление индексов может занять больше времени, чем будет сэкономлено во время операции массового импорта. - Найдите и удалите скрытые символы в файле данных.
Многие программы и текстовые редакторы отображают скрытые символы, находящиеся обычно в конце файла данных. Во время операции массового импорта скрытые символы в файле данных в формате ASCII могут привести к появлению сообщения об ошибке «Обнаружено непредвиденное значение NULL». Чтобы решить проблему, обычно необходимо найти и удалить все скрытые символы.
См. также
Основные понятия
Массовый импорт и экспорт данных с помощью программы bcp
Массовый импорт данных при помощи инструкции BULK INSERT или OPENROWSET(BULK...)
Форматы данных для импорта или экспорта данных
Сценарии массового импорта и экспорта данных
Другие ресурсы
Программа bcp
BULK INSERT (Transact-SQL)
OPENROWSET (Transact-SQL)
Справка и поддержка
Получение помощи по SQL Server 2005
Журнал изменений
Версия | Журнал |
---|---|
12 декабря 2006 г. |
|