Помогите, пожалуйста, в вопросе производительности ниже.
У меня есть таблица A с 920 миллионами строк (размер таблицы 67 ГБ), а в таблице A нет индексов или ключей.
Теперь яЯ хочу скопировать всю таблицу A в таблицу B, она находится в другой базе данных в том же экземпляре, и я следовал приведенным ниже способам выполнения этой задачи.
Вариант 1:
Я использовал select * into db..table B
иэто занимает 70 минут.
Вариант 2:
Пробовал с " Вставить с оператором выбора " вместе с TABLOCK, чтобы включить минимальное ведение журнала (Но обе мои базы данныхв простой модели восстановления), и это также заняло то же время, что и в варианте 1.
Вариант 3:
Думая об однократном вводе 10 миллионов раз.
Таблица A и таблицаУ бота есть любой индекс, ключи.
Запрос:
insert into TableB with(TABLOCK)
select
AUTO_POLICY_NUMBER,
HOME_POLICY_NUMBER,
TRANSACTION_MM,
TRANSACTION_DD,
TRANSACTION_YY,
ANTICIPATION_MM,
ANTICIPATION_DD,
ANTICIPATION_YY,
STATUS_MM ,
STATUS_DD ,
STATUS_YY ,
PRESENT_STATUS,
PRIOR_STATUS ,
LoadDate ,
RecordId ,
AuditTableLoadId ,
CopybookId
From TableA
Может кто-нибудь из вас предложить другие варианты, чтобы моя загрузка данных была гладкой (меньше времени).
Примечание: - Мой сервер имеет 16 ГБ ОЗУ с процессором Intel (R) Xeon (R) E5-2670 0 @ 2,60 ГГц, 2593 Мчz, 2 ядра, 2 логических процессора.
Спасибо!