![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRQ3Bx%2FbtsKA5a9H21%2Fg2LgMSwXVQhhN4pV0dkfpK%2Fimg.webp)
분산 시스템 일관성 한판정리
2024. 11. 8. 11:56
Others
분산환경 시스템을 학습하다 보면 linearizability, causal consistency, total ordering, atomic broadcast 등 비슷하면서도 다른 개념들로 인해 분산 시스템에서의 일관성을 이해하는데 종종 어려움을 겪고는 했습니다. 이번 포스팅을 통하여 위 개념들이 무엇을 의미하고 그리고 어떻게 다른지 살펴보도록 하겠습니다. Linearizable(Strong Consistency, Atomic Consistency) Linearizable 한 시스템은 분산 환경에서 발생한 모든 이벤트를 발생한 절대적인 시간 기준으로 순서(global order)를 매길 수 있습니다. Linearizable 한 시스템에서 발생한 모든 이벤트는 단일 프로세스에서 이벤트를 순차적으로 발생시..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUOsiv%2FbtrTf7mjXY1%2FnK3ZYNzdtTvltVaiIkIisk%2Fimg.png)
[Database] DBA급 개발자로 - #21 Distributed Database 1/3
2022. 12. 9. 22:38
Database/DBA급 개발자로
이전 포스팅에서 로깅을 활용해서 시스템 장애 시 데이터베이스를 어떻게 복구하는지 살펴봤습니다. 이번 포스팅에서는 분산 데이터베이스에 대해 살펴보겠습니다. Distributed Database 데이터베이스 노드가 네트워크로 연결돼서 데이터베이스 기능을 제공하는 형태를 분산 데이터베이스라고 합니다. 노드 간 통신이 네트워크를 통해 이뤄지므로 통신 비용을 고려해야 합니다. System Architecture 분산 데이터베이스는 다음과 같이 구성할 수 있습니다. 하나씩 살펴보겠습니다. Shared Memory 데이터베이스 노드가 네트워크를 통해 하나의 메모리를 공유하는 형태입니다. 데이터베이스 노드는 하나의 메모리에 적재된 데이터를 공유합니다. Shared Disk 네트워크를 통해 디스크를 공유하는 형태입니다...