![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FepAs5M%2Fbtr9NEt6RzG%2FjtSKW8uYlkv7foJnwL42vk%2Fimg.png)
분산 환경의 합의 알고리즘 Paxos
2023. 4. 13. 08:09
논문
이번 포스팅에서는 Paxos 알고리즘에 대해 살펴보겠습니다. 분산 시스템에서 여러 대의 서버가 서로 다른 데이터를 가지고 있을 수 있기 때문에 동시성과 일관성을 보장하는 것은 쉬운 문제가 아닙니다. 이런 문제를 해결하기 위해 분산 환경에서 노드 간 합의를 도출하는 알고리즘인 Paxos가 등장하게 되었습니다. Paxos 알고리즘은 Leslie Lamport가 제안한 알고리즘으로, 분산 시스템에서 노드 간 합의를 도출하는 알고리즘 중 가장 널리 사용되는 알고리즘 중 하나입니다. 이번 포스팅에서는 Leslie Lamport의 "Paxos Made Simple" 논문을 읽고 Paxos가 어떻게 분산 환경에서 노드 간 합의를 도출하는지 살펴보겠습니다. 하지만 논문만으로는 이해가 쉽지 않기 때문에, 논문의 내용을 ..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcLrR0F%2FbtrThOeF6cM%2FTzoiycX95UAA7WNGvRUjKK%2Fimg.png)
[Database] DBA급 개발자로 - #22 Distributed Database 2/3
2022. 12. 10. 09:54
Database/DBA급 개발자로
이전 포스팅에서 분산 데이터베이스에 대해 간략히 살펴봤습니다. 이번 포스팅에서는 분산 트랜잭션 커밋을 어떻게 atomic 하게 처리할지, 복제는 어떻게 하는지 그리고 CAP 이론에 대해 살펴보겠습니다. Atomic Commit Protocol 분산 트랜잭션을 커밋하기 위해서는 모든 노드가 작업을 정상적으로 처리했는지 확인해야 합니다. 분산 환경에서 atomic 한 커밋을 보장하기 위한 프로토콜에는 two phase commit, three phase commit, paxos, raft, ZAP(apache zookeeper)과 viewstamped replication 등이 존재합니다. 이번 포스팅에서는 two phase commit과 paxos에 대해 살펴보겠습니다. Two Phase Commit Tw..