데이터베이스 설계

    [DevOps] 마이크로서비스의 DB설계 사례

    서비스별로 데이터베이스를 사용하면 다음과 같은 이점이 있다. 서비스가 느슨하게 결합되도록 합니다. 한 서비스의 데이터베이스를 변경해도 다른 서비스에는 영향을 미치지 않는다. 각 서비스는 필요에 가장 적합한 데이터베이스 유형을 사용할 수 있다. 예를 들어 텍스트 검색을 수행하는 서비스는 ElasticSearch를 사용할 수 있습니다. 소셜 그래프를 조작하는 서비스는 Neo4j를 사용할 수 있다. 서비스별로 데이터베이스를 사용하면 다음과 같은 단점이 있다. 여러 서비스에 걸쳐 있는 비즈니스 트랜잭션을 구현하는 것은 간단하지 않다. 분산 트랜잭션은 CAP 정리 때문에 피하는 것이 가장 좋다. 게다가 많은 최신(NoSQL) 데이터베이스는 이를 지원하지 않는다. 현재 여러 데이터베이스에 있는 데이터를 조인하는 쿼..