Правдивая история о тестировании SQL Server Change Data Capture
Transcript of Правдивая история о тестировании SQL Server Change Data Capture
![Page 1: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/1.jpg)
Правдивая история о тестировании SQL Server Change Data Capture
Павлов АндрейT-Systems CIS, Санкт-Петербург
![Page 2: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/2.jpg)
About me
• Ex-Developer
• Выпускник СПБ НИУ ИТМО
• Senior QA @ T-Systems CIS
linkedin.com/in/qapavlov
![Page 3: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/3.jpg)
Введение
![Page 4: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/4.jpg)
Традиционные подходы
• Polling (Опрос)сильно нагружают базу
• Trigger (Триггер)отрабатывают синхроннозамедляют основную транзакцию
Polling Trigger CDC
Асинхронность
Не влияет на performance
![Page 5: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/5.jpg)
На сцене появляется...
![Page 6: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/6.jpg)
…Change Data Capture
![Page 7: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/7.jpg)
Пример работы CDC
insert into users(first_name, last_name, create_time)values ('John', 'Smith', getdate())
update usersset first_name = 'Vasya',last_name = 'Vasin'where id = 1
delete userswhere id = 1
![Page 8: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/8.jpg)
Вид снаружи
![Page 9: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/9.jpg)
Тестирование Change Data Capture
![Page 10: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/10.jpg)
Базовое тестирование
• Команды Insert, Update, Delete
• Трекаются изменения в нужных таблицах
• Данные попадают в CDC таблицы
• Передаются верным Subscriber’ам
![Page 11: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/11.jpg)
Обработка падений
![Page 12: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/12.jpg)
Перфоманс
![Page 13: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/13.jpg)
Больше автоматизации
![Page 14: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/14.jpg)
Больше автоматизации
![Page 15: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/15.jpg)
Больше автоматизации
![Page 16: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/16.jpg)
Грабли, на которые наступили
![Page 17: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/17.jpg)
О, этот перфоманс
![Page 18: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/18.jpg)
Слишком частый пересчет
![Page 19: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/19.jpg)
Update – это не всегда Update
Update Deleteand
Inserts
![Page 20: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/20.jpg)
Итог
Change Data Capture – перспективная технология, набирающая все большую популярность по причине того, что она хорошо справляется со своей задачей, работая при этом “из коробки”.
Однако, не стоит забывать, что ее работоспособность и правильная настройка нуждается в проверке.
![Page 21: Правдивая история о тестировании SQL Server Change Data Capture](https://reader036.fdocuments.us/reader036/viewer/2022062313/55b3c0aabb61ebf8508b45bd/html5/thumbnails/21.jpg)
Вопросы
linkedin.com/in/qapavlov