powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / История данных - нужен совет
3 сообщений из 3, страница 1 из 1
История данных - нужен совет
    #32021974
Miha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем.

Вот, очухались клиенты от новогодних праздников и поставили задачку.

Исходные данные: SQL7; база промышленных аггрегатов/их частей/параметров/условий эксплуатации/данных для их расчетов - всего 80 таблиц, в среднем 15000 записей; структура редизайну не подлежит, может только наращиваться (т.е. никаких drop column). Базу редактируют пользователи.
2-я база - копия первой - стоит на сайте в интернете.
При наступлении времени "Ч", отмеченные изменения скопом садятся из 1-й во 2-ю базу.

Задача: создать во 2-й базе структуру поддержки истории изменений.
Т.е. если "Ч"=31.01.2002 происходит репликация, нужно иметь возможность получить снимок до и после 31.01.2002.
Вся история должна сохраняться, т.е. нет срока давности (или очень большой). Частота обновлений - несколько раз в месяц, возможно чаще.
Основное требование - скорость получения данных критична.

Если кто сталкивался с подобными задачами, или имеет идеи эффективного решения, поделитесь плиз.
Спасибо.
...
Рейтинг: 0 / 0
История данных - нужен совет
    #32022443
Harry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я делаю так:
Не удаляю данные из таблицы а добавляю 2 служебных поля 1 дата открытия, 2 дата закрытия.
если стоит дата закрытия то запись "удалена" чтобы обработать данные за какой то период - просто выбираешь по этим полям записи и работаешь с ними...
...
Рейтинг: 0 / 0
История данных - нужен совет
    #32022451
Сергей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно с датой закрытия и открытия это правильно.
В принципе, так как база у тебя не большая, то можно попробовать завести одну таблицу
типа
SystemRoot
-------------
ID
parentID - может пригодится
dateOpen
dateClose

и отнаследовать все таблицы от этой.
есть правла и недостатки такого решения.
1. Замедление работы на вставке. нужно вставить запись в SystemRoot а потом в дочернюю.
2. ну и подвязка дополнительной таблицы при выборке.

но есть и плюсы
как по мне очень привлекательны
я как то делал такой тест.
Root и 200 дочерних таблиц
в каждую положили 5000 записей
в руте получилось 1 млн
запрос по срезу (период) отрабатывал без задержек.
Но лучше конечно проверять на реальных данных

в ообщем смотрите...
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / История данных - нужен совет
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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