BlockChain/블록체인

분산 데이터베이스

Dev_2H 2022. 12. 18.
반응형
분산 데이터베이스
분산 데이터베이스란 한 개의 데이터베이스 관리 시스템 ( 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

댓글