Causality

Высоконагруженные приложения - Глава 12 - Будущее систем данных

Высоконагруженные приложения - Глава 12 - Будущее систем данных

Переводы: EN

Ранее книжный клуб нашей компании изучил отличную книгу:

Martin Kleppmann - Designing Data-Intensive Applications

Мартин Клеппман - Высоконагруженные приложения. Программирование, масштабирование, поддержка

Это - лучшая книга о создании комплексных масштабируемых программных систем, которые я когда-либо читал. 💪

Как обычно, я подготовил краткий обзор и майнд-мапу.

Глава 12 - это саммари книги и визионерский взгляд на будущее.

  • Интеграция данных.
    • Обзор способов интеграции данных.
    • Причинность и зачем нам нужен тотальный порядок и идемпотентность.
    • Транзакции и линеаризуемость
    • Ограничения тотального порядка.
    • Лямбда-архитектура и унификация пакетной и потоковой обработки как наиболее перспективный подход.
  • Разделение баз данных.
    • Обзор выстраиваний композиции из хранилищ данных вместе.
    • Разработка приложений вокруг потока данных.
    • Использование производных состояний.
  • Стремление к правильности: какие проблемы учитывать и как с ними бороться.
    • Жетон сквозного прохода.
    • Как обрабатывать многораздельные запросы.
    • Вопросы своевременности и целостности. Извинения в бизнесе.
    • Мета-подход: доверяй, но проверяй.
  • Делать правильные вещи.
    • Предиктивная аналитика дискриминирует людей! Мы несем ответственность и подотчетность.
    • Конфиденциальность противоречит отслеживанию. Тотальный надзор должен быть законодательным и саморегулируемым.

Скачать всю майнд-мапу в PDF

Высоконагруженные приложения - Глава 9 - Согласованность и Консенсус

Высоконагруженные приложения - Глава 9 - Согласованность и Консенсус

Переводы: EN

Ранее книжный клуб нашей компании изучил отличную книгу:

Martin Kleppmann - Designing Data-Intensive Applications

Мартин Клеппман - Высоконагруженные приложения. Программирование, масштабирование, поддержка

Это - лучшая книга о создании комплексных масштабируемых программных систем, которые я когда-либо читал. 💪

Как обычно, я подготовил краткий обзор и майнд-мапу.

В главе 9 рассказывается о согласованности и консенсусе в распределенных системах. Она охватывает следующие темы:

  • Что такое согласованность и согласованность в конечном счете.
  • Линеаризуемость. Зачем это нужно. Отличие от сериализуемости. Как реализовать линеаризуемость. Стоимость линеаризуемости. Теорема CAP.
  • Гарантии определения порядка. Что такое порядок и причинность. Их отношение к линеаризуемости. Sequence Number Ordering и как его реализовать. Total Order Broadcast и как его реализовать.
  • Распределенные транзакции и консенсус. Зачем нужны консенсус и распределенные транзакции. Как их реализовать, связанные с ними проблемы и программное обеспечение, которое помогает.

Резюме: