반응형
분산 데이터베이스
분산 데이터베이스란 한 개의 데이터베이스 관리 시스템 ( DBMS ) 를 사용해 여러 CPU에 연결된 저장장치들을 제어하는 형태의 데이터베이스 라고 한다.
즉, 물리적으로 떨어져 있는 노드(분산화)들을 한 개의 노드처럼 활용한다는 것이 핵심 개념이다
여기서 노드는 각각의 저장소를 노드라고 한다.
분산 데이터베이스의 투명성은 아래와 같이 6가지 관점에서 바라볼 수 있다.
분산 데이터베이스 종류
- 클러스터링 ( 서버를 여러개로 )
- 레플리케이션 ( 데이터베이스 스토리지를 여러개로)
- 샤딩 ( 데이터를 테이블로 나누어서 저장)
종류가 많으니 자세한건 구글링을 하자...
분산 데이터베이스 장단점
분산 DB 특징
1. 투명한 분산
물리적으로 떨어져 있는 노드들을 단일 데이터베이스 처럼 동일하게 데이터를 처리할 수 있어야 한다.
그렇기에 일반 DB에 비해 구현 방법이 복잡하다
2. 투명한 트랜잭션
분산된 여러 노드들은 하나의 트랜잭션 ( 거래정보 ) 에 대해 일관성을 보장해야 한다.
장점
- 조직 구조 반영할 수 있다 ( 부분 자율성 )
- 중요한 데이터 보호
- 성능 향상
- 경제성
- 모듈화 ( 다른 시스템에 영향 없이 개별 시스템 CRUD 가능 )
- 하나의 시스템에 장애가 발생해도 전체 기능은 손상없이 모든 거래는 ACID 특성을 따른다
*ACID?
데이터베이스 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 네 가지 성질
(원자성, 일관성, 독립성, 지속성)
단점
- 복잡성
- 비용
- 보안
- 무결성 보장의 어려움 ( 물리적으로 떨어진 DB들의 무결성을 보장하기엔 상당한 네트워크 자원 필요 )
- 불완전한 기술
- 표준의 부족
- 데이터베이스 설계의 복잡성
- 관리하는 추가 SW 필요
- 운영 체제가 분산 컴퓨팅을 지원해야 함
- 동시성 제어가 중요함
분산 데이터베이스와 블록체인의 차이점
블록체인 특징
1. 악의적인 사용자를 전제하고 만들어진 시스템 ( 합의 알고리즘 존재 )
2. 운영 주체가 사라져도 시스템 유지 가능 ( 거버넌스 )
분산 데이터베이스는 중앙 관리자가 DB를 관리하기에 언제든지 서비스가 중단될 수 있다.
블록체인은 운영 주체가 없는 탈중앙화되어 있기 때문에 주체가 네트워크를 떠나도 다른 노드에 의해 운영된다.
모든 블록체인은 분산 원장 or 분산 데이터베이스라고 할 수 있다
하지만, 모든 분산 데이터베이스는 블록체인이 아니다.
'BlockChain > 블록체인' 카테고리의 다른 글
작업 증명 ( PoW ) (3) | 2023.03.27 |
---|---|
블록체인 채굴 (0) | 2023.03.27 |
트릴레마 (1) | 2022.12.20 |
머클트리 (1) | 2022.12.18 |
세그윗 SegWit (1) | 2022.12.18 |
댓글