powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как лучше перенести данные из одной БД в другую. (Архивация)
22 сообщений из 22, страница 1 из 1
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38319983
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В проекте (MVC) есть модель из БД, в которую необходимо перенести данные.
Плохая идея создавать отдельный поток или лучше сделать асинхронный вызов и показывать процесс архивации?
Какой способ в данном случае оптимальный.
Объемы могут быть в размере нескольких тысяч данных. Заполнять, скорее всего, нужно будет только одну таблицу, в архивной БД, а в основной удалять эти записи.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320010
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В среднем, сколько по времени будет длиться процесс?
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320043
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУ,

Код: sql
1.
2.
3.
4.
5.
6.
7.
CREATE TABLE [Journal](
	[JournalID] [int] NOT NULL,
	[ActionID] [int] NOT NULL,
	[ClientID] [int] NOT NULL,
	[JDateTime] [datetime] NOT NULL,
	[IPAddress] [nvarchar](20) NOT NULL,
	[Description] [xml] NULL)




Вот таблица, которая будет архивироваться.
Размер данных черт его знает. Все зависит от количества операций.
Несколько тысяц в месяц, если народу будет много. Но это навскидку
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320065
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha, тебе мой вопрос понятен?
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320071
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУ,

Запросы к БД будет выполняться секунд 5-10, если пара тысяч записей
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320106
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha, еще раз, тебе мой вопрос понятен?

МСУВ среднем, сколько по времени будет длиться процесс?
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320148
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavluhaМСУ,

Запросы к БД будет выполняться секунд 5-10, если пара тысяч записей
Такого не бывает. Разве что под отладчиком.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320161
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavluhaПлохая идея создавать отдельный поток или лучше сделать асинхронный вызов и показывать процесс архивации?
1. В определенных случаях можно создавать и отдельный поток, ничего в этом страшного нет
2. Процесс архивации можно показывать и при создании отдельного потока

PavluhaКакой способ в данном случае оптимальный.
Пока на этот вопрос сложно ответить. Уже который раз прошу ответить на простой вопрос. Сколько по времени длится вся операция (и запросы, и архивация, и всё остальное)?
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320207
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУ,

С удовольствием бы ответил. В базе несколько десятков записей работает мгновенно вот с таким кодом:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    using (TransactionScope scope1 = new TransactionScope(TransactionScopeOption.Required))
                    {
                        var newData = from a in _dataManager.Journals
                                      where a.JDateTime < DateTime.Now.AddDays(-1 * 5)
                                      select a;
                        foreach (var y in newData)
                        {
                            ArchiveJournal aj = new ArchiveJournal();
                            aj.JournalID = y.JournalID;
                            aj.ActionID = y.ActionID;
                            aj.ClientID = y.ClientID;
                            aj.JDateTime = y.JDateTime;
                            aj.IPAddress = y.IPAddress;
                            aj.Description = y.Description;

                            _dataManagerArchive.ArchiveJournals.InsertOnSubmit(aj);
                        }
                        _dataManagerArchive.SubmitChanges();
                        scope1.Complete();
                    }
                    _dataManager.Journals.DeleteAllOnSubmit(_dataManager.Journals.Where(w => w.JDateTime < DateTime.Now.AddDays(-1 * 5)));

                    Archive arh = new Archive();
                    arh.ArchiveDate = DateTime.Now;
                    arh.UserID = userID;
                    arh.Description = Resources.Strings.Archive_Success;
                    _dataManager.Archives.InsertOnSubmit(arh);
                    _dataManager.SubmitChanges(ConflictMode.ContinueOnConflict);

                    scope.Complete();
                }
            }
            catch (Exception cce)
            {
                string err = string.Format("exception: {0} stacktrace: {1}", cce.Message, cce.StackTrace);
                Logger.Instance.WriteLine(err);
            }
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320215
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну если всё работает мгновенно, зачем что-то выдумывать с потоками и асинхронностью?
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320223
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУ,

Так тут всего 100 записей, а будут тысячи. Урезать если будут месяцев на 12, там может будет записей тыс 10 например, и
запрос оборвется на клиенте, не будет столько ждать. Кидать отдельный поток, говорить что запрос запущен и пусть ждет инфу о завершении или показывать процесс.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320243
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavluhaМСУ, Так тут всего 100 записей, а будут тысячи.
А зачем тогда приводить бесполезный тест на ста записях? Тестируй на тысячах записей и меряй время.

P.S. Если же нужно гадать на данные - лучше обратиться к гадалкам, а не в форум ASP.NET.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320286
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУ,

Ок, спс.


А кто-нибудь этой штукой пользовался: Async Targeting Pack.
Как себя ведет?
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320329
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще один любитель кодплексовского мусора :)

http://codearticles.ru/articles/2355
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320413
Фотография Абсолют
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУPavluhaМСУ, Так тут всего 100 записей, а будут тысячи.
А зачем тогда приводить бесполезный тест на ста записях? Тестируй на тысячах записей и меряй время.

P.S. Если же нужно гадать на данные - лучше обратиться к гадалкам, а не в форум ASP.NET.
Не проще перевести проект на более новый фрэймворк?

2МСУ: это не кодеплекс, это плугин от МС.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320429
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Абсолют, ок. Ну вот есть нечто такое.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320490
Фотография Абсолют
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАбсолют, ок. Ну вот есть нечто такое.

Не, это вроде не то. Вот, про что Павлуха говорит: sync Targeting Pack for Visual Studio 2012

:)
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320503
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АбсолютМСУАбсолют, ок. Ну вот есть нечто такое.

Не, это вроде не то. Вот, про что Павлуха говорит: sync Targeting Pack for Visual Studio 2012

:)

О как...

...not work with Visual Studio 2010
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320720
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavluhaВ проекте (MVC) есть модель из БД, в которую необходимо перенести данные.
Плохая идея создавать отдельный поток или лучше сделать асинхронный вызов и показывать процесс архивации?
Какой способ в данном случае оптимальный.
Объемы могут быть в размере нескольких тысяч данных. Заполнять, скорее всего, нужно будет только одну таблицу, в архивной БД, а в основной удалять эти записи.

"Перпендикулярный" совет:
Вынести код архивации в отдельное приложение и запускать ч/з планировщик.
+ Гарантированно будет работать в один поток.
+ Можно вынести приложение на другой сервер.
- Возможны "тормоза" БД во время архивации.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320793
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavluhaВ SQL Server Agent запустить джоб. На странице показывать его состояние.
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320799
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КВ SQL Server Agent запустить джоб.
это ж запрос SQL придётся писать
...
Рейтинг: 0 / 0
Как лучше перенести данные из одной БД в другую. (Архивация)
    #38320814
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лёх, ты чё там куришь у себя в Новосибе?

Выдыхай
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как лучше перенести данные из одной БД в другую. (Архивация)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]