К основному содержимому
#SoftwareArchitecture

В этот четверг у нас была очередная встреча клуба любителей архитектуры, где мы закончили вторую часть книги про “Database Internals”, которая посвящена распределенным системам.

#SoftwareArchitecture #Databases #Software #ExternalReview

И одновременно мы закончили обсуждать всю книгу:) Если вы пропустили прошлые эпизоды, то про них можно прочитать и посмотреть здесь: 1, 2, 3. Ну а на встрече мы обсудили главы: — Chapter 12. Anti-Entropy And Dissemination — Chapter 13. Distributed Transactions — Chapter 14. Consensus — Part II. Conclusion

В этом эпизоде с нами были гости: — Виталий Кондратов — мой коллега, архитектор в отделе базовых технологий Тинькофф. Он занимается разработкой и доработкой баз данных, а также инфраструктурой для их эксплуатации. — Сергей Баранов — создатель конференции ArchDays и мой коллега по программному комитету этой конференции, а также автор Agile Mindset и телеграм-канала «Микросервисы — русскоязычное сообщество».

Ниже краткое содержимое последних глав, а подробности можно прочитать в приложенной статье

  • Двенадцатая глава посвящена механизмам, которые нужны для работы eventually consistent систем, в которых существуют реплики и расхождение их состояний. В случае tunable consistency вообще разрешается обменивать консистентность на доступность, поэтому требуется механизмы для устранения этих расхождений.
  • В тринадцатой главе рассматривается то, как перейти от моделей консистентности с одним объектом и одной операцией к выполнению многих операций атомарно. Эта глава заслуживает самостоятельного прочтения, но если обобщать, то автор рассматривает два варианта алгоритмов atomic commitment algorithms и consensus algorithms.
  • Все предыдущие рассмотренные темы позволили нам приблизиться к вершине исследований на тему распределенных систем, а именно к теме консенсуса. Алгоритмы консенсуса позволяют распределенной системе из множества процессов достичь соглашения относительно какого-то значения. С точки зрения теории у таких алгоритмов должно быть следующие три свойства: agreement, validity, termination. И четырнадцатой главой мы завершаем рассмотрение книги.

#SoftwareArchitecture #Databases #Software #ExternalReview