2015-11-17 2 views
1

У меня есть устаревшая база данных SQL Server, и мне нужно скопировать часть очень большой таблицы на нее в новый кластер Aurora DB от AWS (RDS).Копирование части таблицы из SQL Server в Aurora DB (на основе MySQL от AWS)

Старая таблица на SQL-сервере имеет 1,8 миллиарда записей и 43 столбца, однако в новой базе данных я буду иметь только 13 из этих столбцов, переносимых и почти всех строк.

Мне было интересно, есть ли у кого-нибудь идеи по наилучшему способу переноса этих данных?

Я написал простой скрипт Python для запроса SQL-сервера, а затем выполнил инструкции insert в новой базе данных, но я считаю, что для выполнения нескольких тестов на меньших наборах данных потребуется около 30 часов.

Любые идеи?

P.S Aurora основан на MySQL, поэтому я бы предположил, что если он работает для MySQL, он будет работать для Aurora.

+0

Перед импортом не создавайте никаких индексов, кроме ПК. – Eckd

ответ

1

Предполагая, что вы можете получить данные, которые вы хотите, в файл CSV, LOAD DATA LOCAL INFILE должен быть довольно эффектным.

Я действительно задавался вопросом, будет ли оно разрешено на RDS и обнаружено изделие AWS на importing data into MySQL on RDS. Я не мог найти эквивалент для Aurora, только migrating from an RDS based MySQL instance. Однако есть документ Amazon RDS for Aurora Export/Import Performance Best Practices, который имеет одну ссылку на LOAD DATA LOCAL INFILE.

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