- Главная
- →
- Базы данных и системы хранения
Длинная транзакция или когда размер имеет значение Базы данных и системы хранения
Начинал как разработчик приложений ещё в далеком 2003 году, лет через пять акцент сместился в сторону разработки на БД Oracle. А т.к. на одних знаниях разработчика в высоконагруженных проектах далеко не уедешь, стал углубляться в администрирование баз данных и linux-серверов. Затем пришло время погрузиться в PostgreSQL. В качестве знаковых достижений можно отметить проектирование и внедрение ключевых элементов архитектуры слоя данных на проектах гос. услуг и ГИС ЖКХ, таких, как горизонтальный и вертикальный шардинги, NoSQL, денормализации и др.
Тезисы
Все знают, что длинные транзакции - это плохо, но не все могут объяснить - почему. Что в них такого, что заставляет PostgreSQL работать медленнее?
На примере одного из наших процессов я покажу, насколько сильно могут влиять друг на друга, казалось бы, несвязанные активности. А чтобы разобраться в причинах, мы подробно рассмотрим такие темы, как уровни изоляции транзакций, правила определения видимости строк, хинт биты и "минивакуум".