Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Ускорение переливания данных  [new]
MaximFomenko
Member

Откуда: London, UK
Сообщений: 594
Добрый день.

Есть задача каждый день заново копировать таблицу без никаких изменений с одной базы на одном сервере в другую базу на другом сервере. Версии серверов одинаковые - MS SQL 2005.

INSERT INTO [database1].[table1]
SELECT * FROM [database1].[table1]


работает слишком медленно - больше часа на 8,5 млн. строк.

Попробовал ускорить это путем минимизации логгирования:

ALTER DATABASE [database1] SET RECOVERY BULK_LOGGED;
GO

SELECT * INTO [database2].[table1] FROM [database1].[table1]
GO

ALTER DATABASE [database1] SET RECOVERY FULL;
GO


стало быстрее - 12 мин.

Это конечно уже лучше, но все равно долговато. Разница всего раз в 5.

Пробовал решать эту же самую задачу но в среде Оракла и там разница в производительности между первым и вторым вышеизложенным вариантом решения была порядка 80 раз. Т.е. первый способ копирует таблицу за 1 час 20 мин, а второй за 1 минуту.

Можно ли с MS SQL Server тоже выжать такое ускорение как-то?
24 янв 13, 17:10    [13822989]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение переливания данных  [new]
sphinx_mv
Member [заблокирован]

Откуда:
Сообщений: 1672
MaximFomenko
Добрый день.

Есть задача каждый день заново копировать таблицу без никаких изменений с одной базы на одном сервере в другую базу на другом сервере. Версии серверов одинаковые - MS SQL 2005.

...

Можно ли с MS SQL Server тоже выжать такое ускорение как-то?
У Вас сервера насколько далеко друг отдруга расположены? Какая связь между ними имеется?
Если сервера рядом или связаны достаточно широким (и надежным) каналом, не очень понимаю, зачем Вам копировать таблицы.
Настроить линк-сервер с одного на другой - и будет у Вас "мгновенный" обмен данными между серверами.
24 янв 13, 18:01    [13823359]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение переливания данных  [new]
MaximFomenko
Member

Откуда: London, UK
Сообщений: 594
sphinx_mv
MaximFomenko
Добрый день.

Есть задача каждый день заново копировать таблицу без никаких изменений с одной базы на одном сервере в другую базу на другом сервере. Версии серверов одинаковые - MS SQL 2005.

...

Можно ли с MS SQL Server тоже выжать такое ускорение как-то?
У Вас сервера насколько далеко друг отдруга расположены? Какая связь между ними имеется?
Если сервера рядом или связаны достаточно широким (и надежным) каналом, не очень понимаю, зачем Вам копировать таблицы.
Настроить линк-сервер с одного на другой - и будет у Вас "мгновенный" обмен данными между серверами.

Долго объяснять все тонкости внутренней архитектуры компании. Остановимся просто на том, что данные нужно именно скопировать как на обязательном требовании.

Что в таком случае можно еще сделать для ускорения?
24 янв 13, 18:05    [13823396]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение переливания данных  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37050
MaximFomenko
sphinx_mv
пропущено...
У Вас сервера насколько далеко друг отдруга расположены? Какая связь между ними имеется?
Если сервера рядом или связаны достаточно широким (и надежным) каналом, не очень понимаю, зачем Вам копировать таблицы.
Настроить линк-сервер с одного на другой - и будет у Вас "мгновенный" обмен данными между серверами.

Долго объяснять все тонкости внутренней архитектуры компании. Остановимся просто на том, что данные нужно именно скопировать как на обязательном требовании.

Что в таком случае можно еще сделать для ускорения?
Заменить модем на широкополосный интернет.
24 янв 13, 18:12    [13823448]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение переливания данных  [new]
komrad
Member

Откуда:
Сообщений: 5249
MaximFomenko
Что в таком случае можно еще сделать для ускорения?


тынц
24 янв 13, 18:14    [13823468]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение переливания данных  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31425
MaximFomenko
Можно ли с MS SQL Server тоже выжать такое ускорение как-то?
Можно сделать SSIS пакетом, в том числе через файл (особенно если канал плохой, тогда можно передавать сжатый файл)
24 янв 13, 20:59    [13824150]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение переливания данных  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 33929
Блог
MaximFomenko
Есть задача каждый день заново копировать таблицу без никаких изменений с одной базы на одном сервере в другую базу на другом сервере. Версии серверов одинаковые - MS SQL 2005.

INSERT INTO [database1].[table1]
SELECT * FROM [database1].[table1]



это как? сервера же разные
24 янв 13, 22:13    [13824366]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить