Можешь объяснить event sourcing как архитектурный паттерн, включая его основные принципы, ключевые преимущества для дизайна системы и основные вызовы, которые разработчикам стоит учитывать при его реализации? — ДейлиПреп