분산컴퓨팅 아키텍처 4가지 (공유없음,공유디스크,공유메모리,연합데이터베이스)
분산컴퓨팅 아키텍처 4가지 (공유없음,공유디스크,공유메모리,연합데이터베이스)
Summary 분산컴퓨팅 아키텍처에는 네 가지 방식이 있다: 공유 없음(각 노드가 독립적으로 작업), 공유 디스크(공통 저장공간 사용), 공유 메모리(복잡한 동기화 문제), 연합 데이터베이스(여러 데이터베이스를 하나처럼 보이게 하는 미들웨어). 각 방식은 데이터 공유와 일관성 문제를 다루는 설계 철학을 반영한다.
여러 노드가 데이터를 어떻게 공유할까에 대한 설계 철학임
공유 없음 (Shared Nothing) 방식: 각자도생허셈
- 그냥 각 노들이 각자 일만 하고 마는거임
- 즉, 각자 지들 독립적인 RAM 및 HDD에서 북치고 장구치고 다 하겠다는거
- 어처피 솔플이니까, 노드를 늘리는게 상대적으로 쉽고, 속도도 빠른편임 그냥 다 지들 일만 하면 되니까!
- 근데 이러면 데이터 일관성은 어쩔꺼?
- 상당히 낙관적인 방식이라고 생각이 드네유
공유 디스크 (Shared Disk) 방식: 각 노드간 같은 저장공간 사용
- AWS의 NFS 개념 생각해두면 됨
- 즉, 여러 노드가 각자 일하되, 일한 데이터는 공통으로 마운트된 공용 HDD에 업데이트 해두는거제
- 근데 이러면 자연스럽게 Untitled 문제가 대두되겄지?
- 결국 순서게임이야~
공유 메모리 (Shared Memory) 방식
- 공유 디스크 데드락 문제도 충분히 학습이 안되었는데, 공유메모리기법까지 고민해본다고?
- 이런 불경한건 일단 패스할게요
- 나 무서워
연합 데이터베이스 (Federated Databases) 방식
- 여러 독립된 데이터베이스 시스템을 중간에서 관리하는 미들웨어 친구가 하나의 데이터베이스처럼 보이게 하는거임.
- 즉, 사용자가 보기엔 하나의 DB처럼 보이지만?
- 사실은 미들웨어가 하나처럼 보이게만들었다는거~~
💬 댓글
GitHub 계정으로 로그인하여 댓글을 남겨보세요. GitHub 로그인
🔧 댓글 시스템 설정이 필요합니다
GitHub Discussions 기반 댓글 시스템을 활성화하려면:
GISCUS_SETUP_GUIDE.md
파일의 안내를 따라 설정 완료Repository 관리자만 설정할 수 있습니다. 설정이 완료되면 모든 방문자가 댓글을 남길 수 있습니다.