bytebytego
https://www.linkedin.com/posts/alexxubyte_systemdesign-thankyou-coding-activity-6974745458795503616-lLXD?utm_source=share&utm_medium=member_desktop
https://www.youtube.com/c/ByteByteGo
Algorithms you should know before
https://blog.bytebytego.com/p/algorithms-you-should-know-before
Redis Explained
https://architecturenotes.co/redis/
Fallacies of Distributed Systems
https://architecturenotes.co/fallacies-of-distributed-systems/
Lesson 124 - Challenges of Distributed Architectures
Orchestration vs Choreography
https://stackoverflow.com/questions/4127241/orchestration-vs-choreography#:~:text=The%20choreography%20describes%20the%20interactions,the%20services%20involved%20should%20reside.
orchestration
choreography
Distributed Systems for Practitioners
https://www.educative.io/courses/distributed-systems-practitioners
L16: The CAP Theorem
Linksey Kuper courses
https://www.youtube.com/user/lindseykuper
https://www.linkedin.com/posts/jlbernardes_datastore-databaseengineer-cassandra-activity-6930326794768117760-v-dj?utm_source=linkedin_share&utm_medium=member_desktop_web
Um degrau a menos, escadaria ainda longa… Então bora aquecer os cambitos!
MongoDB e Cassandra, duas engines completamente diferentes, em que a única coisa que havia em comum pra mim a 8 meses atrás é que eu PRECISAVA assimilar conhecimento a respeito. Graças a esse maravilhoso material consegui concluir o objetivo de entender e conhecer essa tecnologia. Quem sabe em breve haja janela no cronograma de estudos pra uma certificação.
O povo modernoso classifica esse banco como wide-column store (rapaz, e eu pensava que eu que era bom de inventar nomes para as coisas), os caras até chamavam as tabelas de column family nas primeiras versões. Coisa fina, luxo!
Mas não só de nomes e classificações bonitas que estamos falando, é uma arquitetura absolutamente elegante e disrruptiva: Esse carinha entrega um datastore distribuído de larga escala, altamente disponível e escalável, e “ocasionalmente consistente” (não se assuste, quem já leu sabe do que se trata, e que é muito mais consistente que certos xlsMS, digo, RDBMS).
Os caras tiveram a audácia de jogar no mesmo balde conceitos acadêmicos como:
- O phi acrual failure detector, de 2006, publicado no instituto de ciência e tecnologia do Japão;
- As Merkle Trees, coisa fina criada no longínquo século XX, esse daqui se não me engano foi usado nas implementações iniciais do ZFS, e até hoje nos blockchain da vida;
- E ainda uma implementação de protocolo de gossip (ou epidemic protocol), coisa que quem fez uma cadeira de Sistemas Distribuídos sabe qual é, cujo objetivo é similar ao do ONS no Grid, mas tendo as semelhanças cessando por aí…
Estudar o pouco de Cassandra que estudei, me permitiu ver mais além, e perceber que soluções clássicas são sim estáveis e seguras, mas será mesmo que são as mais adequadas pra cada requisito de negócio? Baita banco! Baita solução!
Similarities and differences of Spark, Dask, and Ray by Holden Karau
Holden Karau
What will be covered?
- What are distributed systems
- What are data parallel distributed systems
- How are they different
- What are some common parts of data parallel distributed systems
- tl;dr - We’ve made some bad choices historically, but not all is lost
What are distributed systems?
A distributed systems in one in which the failure of a computer you didn’t even know existed can render your own computer unusable.
https://amturing.acm.org/award_winners/lamport_1205376.cfm
What are some of the core building blocks?
- Distributed Locks
- Distributed Clocks
- Distributed Counters
What are some classes of distributed system problems?
- File Storage Systems
- Think HDFS, S3, Minio, etc.
- “Embarrassingly Parallel”
- Think Folding @ home, minimal/no coordination
- Databases
- Multiple clients, etc
- API servers
- Multiple clients, etc
- Data parallel
- Dask, Spark, etc.