Distributed-Systems

There's a total of 4 articles.




Kubernetes

Kubernetes
Kubernetes, source: kubernetes.io

Kubernetes is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications.


Me
Published on Sun, Apr 30, 2023
Last modified on Sun, Nov 10, 2024
54 words - Page Source

Kafka

Kafka

Kafka is a distributed event streaming platform designed for building high-throughput, fault-tolerant, and scalable data streaming applications.


This article covers key designs in kafka such as how messages for a topic are shared into partitions assigned to brokers. Then we see some guarantees about producers, consumers and consumer groups.
Me
Published on Sat, Feb 29, 2020
Last modified on Fri, Nov 22, 2024
321 words - Page Source

Cassandra

Cassandra

Cassandra is a highly scalable, distributed NoSQL (non-relational) database management system designed for handling large amounts of data across multiple commodity servers.


This article covers key design features of cassandra such as the usage of consistent hashing, the write pattern to a write ahead log and a memtable, the read pattern from the memtable and from sstables, and finally and most important, some examples about data modeling for different types of queries.
Me
Published on Fri, Feb 28, 2020
Last modified on Fri, Nov 22, 2024
768 words - Page Source

Partitioning

Partitioning
Image source: https://www.enjoyalgorithms.com/blog/data-partitioning-system-design-concept

Data partitioning refers to the process of dividing a system’s data into smaller, more manageable subsets, which are distributed across multiple storage locations or nodes.


This article covers some strategies for partitioning including random partitioning, by hash key, by range and a hybrid approach for skewed workloads. We also see strategies to rebalance partitions if there's a static or dynamic number of partitions.
Me
Published on Mon, Jan 8, 2018
Last modified on Sun, Nov 10, 2024
511 words - Page Source