powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Impact from ROWVERSION with Index
7 сообщений из 7, страница 1 из 1
Impact from ROWVERSION with Index
    #39917308
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа,
кто-то проводил тесты относительно того, какой импакт (деградация производительности) возникнет, если добавить в таблицу rowversion c индексом.

Пока рассмотрим ситуацию, что мы просто добавили колонку и индекс. Выгрузка данных по этому механизму может происходить с реплики.

В таблицу 50 колонок по 300 байт в среднем строка, в нормальном режиме вставлялось или обновлялось 1000 тыс строк в секунду. Что будет при добавлении поля и индекса?

Я знаю, что импакт небольшой, но хотелось бы конкретные цифры.

Кто-нибудь проводил тесты?

Если кто не в теме -- загляните сюда

https://www.mssqltips.com/sqlservertip/3295/using-rowversion-with-sql-server-integration-services-to-reduce-load-times/
...
Рейтинг: 0 / 0
Impact from ROWVERSION with Index
    #39917386
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

мне вообще непонятно - для чего нужно rowversion,если есть CDC.
...
Рейтинг: 0 / 0
Impact from ROWVERSION with Index
    #39917472
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
a_voronin,

мне вообще непонятно - для чего нужно rowversion,если есть CDC.


Я лично не считаю CDC эффективным.
1) Если обновлений много, то сколько мусора вы накопите в исходной базе? Это займет много места.
2) После какого момента его чистить? а успела ли исходная система все забрать?
3) А если таблицу надо выгружать порционно с нуля?
4) А если загрузка упала, а CDC архив уже почистили?
5) ну и Before SQL Server 2016, Change Data Capture could be enabled on a SQL Server database only under the SQL Server Enterprise edition,....

На практике я видел, что его сделали только на небольших таблицах. На 100+ млн это не вариант.


В любом случае остается вопрос -- каков импакт. Вот была таблица в неё вставлялось 1000 записей в секунду. Вот добавили вы CDC или timestamp с индексом и насколько деградирует производительность.

timestamp с индексом это наиболее оптимальное решение для инкрементальной выгрузки. Или кто-то поставит это под сомнение?
...
Рейтинг: 0 / 0
Impact from ROWVERSION with Index
    #39917515
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

нууу не бывает наиболее оптимального, т.к. оптимальное - это и есть "самое лучшее".

Решение с rowversion очень надёжно, но CDC работает фоном и не влечет каких-то издержек при вставке. Чтобы сломать CDC достаточно изменить модель восстановления базы на "простую". У нас как-то админы так и сделали. По rowversion не подскажу, к сожалению (и моему тоже). Масштабных испытаний не проводил.
...
Рейтинг: 0 / 0
Impact from ROWVERSION with Index
    #39917523
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
CDC работает фоном и не влечет каких-то издержек при вставке. Чтобы сломать CDC достаточно изменить модель восстановления базы на "простую".
Ничего себе, "не влечёт", а невозможность использовать простую модель не "издержки"?
...
Рейтинг: 0 / 0
Impact from ROWVERSION with Index
    #39917542
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
Чтобы сломать CDC достаточно изменить модель восстановления базы на "простую".
CDC работает аналогично транзакционной репликации - записи журнала помечаются как реплицируемые и пока не обработаны соответствующим агентом, будут препятствовать усечению журнала, при этом log_reuse_wait_desc = replication.
И от модели восстановления данное поведение не зависит. Так что вы что-то путаете.
...
Рейтинг: 0 / 0
Impact from ROWVERSION with Index
    #39917754
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
a_voronin,

мне вообще непонятно - для чего нужно rowversion,если есть CDC.


Для меня блокирующей проблемой по использованию CDC является то, что она не работает на ALWAYSON реплике.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Impact from ROWVERSION with Index
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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