https://edu.postgrespro.ru/postgresql_internals-15.pdf - Прекрасная книга про PG. Не перевод. Кто хочет изучить устройство PG рекомендую. Концепции работы СУБД не особо рассматриваются. Речь идет о том как работает именно PG. Внутренности работы описаны здорово.
👍3
https://www.youtube.com/watch?v=vpbmYA0Wsbg - Ignite community мне очень нравится тем, что мы делаем очень много докладов про дизайн компонентов СУБД. Позволяет лучше понимать код проекта и суть решений.
Андрей Гура с Лешей Гончаруком рассказывают про устройство PDS.
Смотрите - это очень интересно.
Кто знает подобные доклады про другие СУБД - шлите линки в комментариях.
Андрей Гура с Лешей Гончаруком рассказывают про устройство PDS.
Смотрите - это очень интересно.
Кто знает подобные доклады про другие СУБД - шлите линки в комментариях.
YouTube
Aндрей Гура - Архитектура хранилища распределенной базы данных Apache Ignite: решения и компромиссы
Устройство персистентного хранилища Apache Ignite следует подходам, принятым в классических базах данных, основанных на архитектуре ARIES. Тем не менее, разработчикам Ignite потребовалось скорректировать архитектуру для увеличения скорости разработки и облегчения…
👍3❤2
https://assets.amazon.science/dc/2b/4ef2b89649f9a393d37d3e042f4e/amazon-aurora-design-considerations-for-high-throughput-cloud-native-relational-databases.pdf - ребята из VK показали пейперы в которых Amazom описал дизайн Aurora - клаудной СУБД совместимой с MySQL и PostgreSQL. Познавательно
👍4
https://dl.acm.org/doi/pdf/10.1145/2882903.2903741 - дизайн SnowFlake. Легко читается - много интересных мыслей и хороших решений по дизайну системы.
👍7
Erasure Coding in Windows Azure Storage.pdf
653.3 KB
Описание как работает хранение BLOB'ов в Windows Azure Storage. Очень интересное хотя и непростое чтиво.
Если кто знает хороший пейпер с общим описанием работы кодов Рида-Соломона - пишите в комментариях.
Если кто знает хороший пейпер с общим описанием работы кодов Рида-Соломона - пишите в комментариях.
👍4
Windows_Azure_Storage_A_Highly_Available_Cloud_Storage_Service_with.pdf
780.4 KB
Описание дизайна всего S3 хранилища от Windows Azure Storage. Количество инфы и интересных тем зашкаливает. Очень интересно.
НесколькоКПДВ цитат:
> WAS provides high availability with strong consistency guarantees. This combination seems to violate the CAP theorem
> This redundancy provides essential data recovery protection against disasters such as earthquakes, wild fires, tornados, nuclear reactor meltdown, etc.
Особенно интересует что скрывается под "etc" :)
Несколько
> WAS provides high availability with strong consistency guarantees. This combination seems to violate the CAP theorem
> This redundancy provides essential data recovery protection against disasters such as earthquakes, wild fires, tornados, nuclear reactor meltdown, etc.
Особенно интересует что скрывается под "etc" :)
👍5
rules-atc15.pdf
583.7 KB
Подход к разработке распределенной системы управления облачными сервисами описан в статье "Experience with Rules-Based Programming for
Distributed, Concurrent, Fault-Tolerant Code".
Ключевые абстракции:
1.
2.
3.
4.
5.
На этих штуках строятся управляющие механизмы. Сверху всем этим управляет простая штука которая маршрутизирует события и управляет жизненным циклом.
Преимущества подхода в том, что действия и логика перехода между состояними становится довольно простой, как и разработка управляющего механизма.
Недостатки - сложно увидеть общую картину. Построить в голове полный flow процесса. Кажется, будет сложней тестировать и отлаживать если чето идет не так.
Очень близко к акторам и FSM (что и упоминается в статье), но акценты расставлены по-другому.
Distributed, Concurrent, Fault-Tolerant Code".
Ключевые абстракции:
1.
event - внешнее событие, которое необходимо обработать.2.
condition - условие которое проверяется перед запуском action.3.
action - действие которое выполняется в ответ на событие.4.
rule = condition + action.5.
goal - цель(которую нужно достичь) действия.На этих штуках строятся управляющие механизмы. Сверху всем этим управляет простая штука которая маршрутизирует события и управляет жизненным циклом.
Преимущества подхода в том, что действия и логика перехода между состояними становится довольно простой, как и разработка управляющего механизма.
Недостатки - сложно увидеть общую картину. Построить в голове полный flow процесса. Кажется, будет сложней тестировать и отлаживать если чето идет не так.
Очень близко к акторам и FSM (что и упоминается в статье), но акценты расставлены по-другому.
👍4
fdb-paper.pdf
1 MB
Очень люблю хорошо структурированные описания архитектур.
C FoundationDB знаком неблизко, но кажется стоит познакомиться поближе.
Слышал, про использования в высоконагруженном финтехе. В пейпере говорят, что в Apple используют.
Очень интересно было сравнивать решения принятые в FDB и Ignite. Когда сделаем выпуск подкаста про FDB должно выйти ОЧЕНЬ интересно.
Design Principles:
* Divide-and-Conquer (or separation of concerns). FDB decouples the transaction management system (write path) from
the distributed storage (read path) and scales them independently.
* Make failure a common case
* Fail fast and recover fast. To improve availability, FDB strives
to minimize Mean-Time-To-Recovery (MTTR).
* Simulation testing. FDB relies on a randomized, deterministic
simulation framework for testing the correctness of its distributed database.
C FoundationDB знаком неблизко, но кажется стоит познакомиться поближе.
Слышал, про использования в высоконагруженном финтехе. В пейпере говорят, что в Apple используют.
Очень интересно было сравнивать решения принятые в FDB и Ignite. Когда сделаем выпуск подкаста про FDB должно выйти ОЧЕНЬ интересно.
Design Principles:
* Divide-and-Conquer (or separation of concerns). FDB decouples the transaction management system (write path) from
the distributed storage (read path) and scales them independently.
* Make failure a common case
* Fail fast and recover fast. To improve availability, FDB strives
to minimize Mean-Time-To-Recovery (MTTR).
* Simulation testing. FDB relies on a randomized, deterministic
simulation framework for testing the correctness of its distributed database.
👍7
Видео из 2019 - больше бизнесовое и архитектурное чем техническое. Этим и зашло. "Top Ten Big Data Blunders".
Кажется, что многие ошибки, особенно в консервативных бизнесах актуальны и сейчас.
Список такой (пояснения по ним доставляют отдельно):
Blunder #1: Not Planning to Move EVERYTHING to the Cloud
Blunder #2: Not Planning for AI/ML to be Disruptive
Blunder #3: Not Solving your REAL Data Science Problem
Blunder #4: Belief that Traditional Data Integration Techniques Will Solve Issue #3
Blunder #5: Belief that Data Warehouses will Solve all your Problems
Blunder #6: Belief that Hadoop/Spark will Solve all your Problems
Blunder #7: Belief that Data Lakes will Solve all your Problems
Blunder #8: Outsourcing your new stuff to Palantir, IBM, Mu Sigma...
Blunder #9: Succumbing to the "Innovator's Dilemma"
Blunder #10: Not Paying Up for a Few "Rocket Scientists"
Blunder #11 (Bonus): Working for a Company That is not Trying to do Something about the "Sins of the Past"
Заметки на полях:
* Понравился тон и скорость выступления. В моем понимании именно так надо общаться с большими начальниками которым продаешь технологии.
* Ошибки и провалы некоторых архитектур, например, КМД (Корпоративная Модель Данных) я предсказывал с теми же аргументами что и профессор.
Если кто не знает - Стоунбрейкер основатель Ingres (из которого вышел postgres) и кучи других СУБД. Обладатель премии Тьюринга. Короч очень авторитетный в мире баз данных.
Кажется, что многие ошибки, особенно в консервативных бизнесах актуальны и сейчас.
Список такой (пояснения по ним доставляют отдельно):
Blunder #1: Not Planning to Move EVERYTHING to the Cloud
Blunder #2: Not Planning for AI/ML to be Disruptive
Blunder #3: Not Solving your REAL Data Science Problem
Blunder #4: Belief that Traditional Data Integration Techniques Will Solve Issue #3
Blunder #5: Belief that Data Warehouses will Solve all your Problems
Blunder #6: Belief that Hadoop/Spark will Solve all your Problems
Blunder #7: Belief that Data Lakes will Solve all your Problems
Blunder #8: Outsourcing your new stuff to Palantir, IBM, Mu Sigma...
Blunder #9: Succumbing to the "Innovator's Dilemma"
Blunder #10: Not Paying Up for a Few "Rocket Scientists"
Blunder #11 (Bonus): Working for a Company That is not Trying to do Something about the "Sins of the Past"
Заметки на полях:
* Понравился тон и скорость выступления. В моем понимании именно так надо общаться с большими начальниками которым продаешь технологии.
* Ошибки и провалы некоторых архитектур, например, КМД (Корпоративная Модель Данных) я предсказывал с теми же аргументами что и профессор.
Если кто не знает - Стоунбрейкер основатель Ingres (из которого вышел postgres) и кучи других СУБД. Обладатель премии Тьюринга. Короч очень авторитетный в мире баз данных.
YouTube
2019 MIT Citi - 3 - Top Ten Big Data Blunders - Michael Stonebraker
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
👍3
Forwarded from iZhikov.public
https://youtu.be/LkGNUSFU3Ls?si=7jV7QPp28F_M09u2 - db.podcast #2 - FoundationDB
YouTube
База данных от Apple, FoundationDB
#foundationdb #ignite #dbms #oltp
Обсуждаем whitepaper "A Distributed Unbundled Transactional Key Value Store" [1]. FoundationDB - распределённое KV хранилище. Обсуждаем предоставляемые гарантии и особенности архитектуры.
[1] www.foundationdb.org/files/fdb…
Обсуждаем whitepaper "A Distributed Unbundled Transactional Key Value Store" [1]. FoundationDB - распределённое KV хранилище. Обсуждаем предоставляемые гарантии и особенности архитектуры.
[1] www.foundationdb.org/files/fdb…
👍3
Forwarded from iZhikov.public
https://youtu.be/U6mrLzES0dU?si=IgeY4EGYrEHEpbk7 - сказ про benchmark driven development
YouTube
[Анонс] db.podcast #3
#dbms #ignite #oltp #gridgain
Анонс выпуска про Apache Ignite, на котором мы обсуждали задачи, которые покрывает Ignite и пытались проследить его эволюцию с момента создания в GridGain.
Анонс выпуска про Apache Ignite, на котором мы обсуждали задачи, которые покрывает Ignite и пытались проследить его эволюцию с момента создания в GridGain.
👍9
Forwarded from iZhikov.public
YouTube
Back to the future of the Apache Ignite
#ignite #dbms #oltp #datagrid #gridgain
Обсуждаем Apache Ignite - распределённую in-memory базу данных для нагруженных систем [1], которой каждый из нас посвятил несколько лет профессиональной карьеры.
В выпуске проследили эволюцию Ignite от Compute Grid…
Обсуждаем Apache Ignite - распределённую in-memory базу данных для нагруженных систем [1], которой каждый из нас посвятил несколько лет профессиональной карьеры.
В выпуске проследили эволюцию Ignite от Compute Grid…
🔥8
Классика разработки СУБД - ARIES - читать непросто, да и статья обьемная - но знать надо. Рекомендую к ознакомплению:
https://dl.acm.org/doi/pdf/10.1145/128765.128770
https://dl.acm.org/doi/pdf/10.1145/128765.128770
👍8
Forwarded from iZhikov.public
Четвертый выпуск получился самым сложным по организации. Поругались до трех раз, переделали претезентацию два раза, форкнули подкаст - надеюсь наши усилия не пропадут даром и вам зайдет.
В этом выпуске мы даже писали код! И даже запускали его!!!
https://www.youtube.com/watch?v=ojtNJX0ik2I
В этом выпуске мы даже писали код! И даже запускали его!!!
https://www.youtube.com/watch?v=ojtNJX0ik2I
YouTube
Программирование распределённых отказоустойчивых алгоритмов с использованием Rule-Based подхода
#distributed #ignite #concurrency
Обсуждаем работу "Experience with Rules-Based Programming for Distributed, Concurrent, Fault-Tolerant Code" [1].
Работа предлагает подход к программированию распределённых алгоритмов, который упрощает написание и поддержку…
Обсуждаем работу "Experience with Rules-Based Programming for Distributed, Concurrent, Fault-Tolerant Code" [1].
Работа предлагает подход к программированию распределённых алгоритмов, который упрощает написание и поддержку…
🔥5
Если когда-то возникал вопрос "Как ConsumerGroup'ы работают в Кафке?" - то вот ответ:
https://www.youtube.com/watch?v=MmLezWRI3Ys
https://www.youtube.com/watch?v=MmLezWRI3Ys
YouTube
"The Magical Rebalance Protocol of Apache Kafka" by Gwen Shapira
Very few people know that inside's Apache Kafka's binary protocol for publishing and retrieving messages hides another protocol - a generic, extensible protocol for managing work assignments between multiple instances of a client application.
When multiple…
When multiple…
👍3
db.links
Если когда-то возникал вопрос "Как ConsumerGroup'ы работают в Кафке?" - то вот ответ: https://www.youtube.com/watch?v=MmLezWRI3Ys
А я, в свое время, чинил конкаррент багу в этом протоколе - https://github.com/apache/kafka/commit/00374c3ddf6c4ecc96f58c6685fd107500b976cd
GitHub
KAFKA-8104: Consumer cannot rejoin to the group after rebalancing (#7… · apache/kafka@00374c3
…460)
This PR contains the fix of race condition bug between "consumer thread" and "consumer coordinator heartbeat thread". It reproduces in many production env...
This PR contains the fix of race condition bug between "consumer thread" and "consumer coordinator heartbeat thread". It reproduces in many production env...
🔥10
