В настоящее время мы находимся в процессе преобразования производных таблиц db из INT в BIGINT с помощью команды Sybase ALTER. Одна из таблиц имеет 1,5 миллиарда строк, которые мы не можем преобразовать за один уик-энд (заработали почти 43 часа, а затем мы убили ее & восстановили дампы БД).Преобразование преобразования BIGINT Sybase ASE 15 7
Любое другое предложение для быстрого преобразования этой таблицы в BIGINT. Эта таблица содержит кластерные, уникальные и некластеризованные индексы.
Я думаю следующие решения: Можете ли вы предложить лучший способ сделать это?
- Создать новый столбец & обновить его старым значением, а затем удалить старый столбец, а затем переименовать новый столбец.
- BCP из данных, усечение таблицы, изменять структуру таблицы с новыми типами данных, то BCP в данных
- Partition таблицу в столики затем изменить таблицу & объединить его снова.
Мой выбор: BCP вывести данные, обрезать таблицу, изменить структуру таблицы с новыми типами данных, затем BCP в данных, загрузка должна быть значительно быстрее, чем некоторое обновление на 1,5 миллиарда строк, и все, что вам нужно do - это изменение структуры таблицы. – theweeknd
Может кто-то подтвердить, что загрузка быстрее в ASE, чем обновление, я думал об IQ, и теперь я видел, что он использует ASE, DML в ASE довольно быстро по сравнению с IQ, поэтому, возможно, я ошибся? – theweeknd
Спасибо, но у меня есть индексы (1 кластер и 3 некластера) в этой таблице, поэтому нам нужно перестроить индексы, если я иду на BCP, - это занимает огромное время снова. – NaguG