본문 바로가기

N2M



  • Home
  • Solution
  • Couchbase

Couchbase

개요

카우치베이스 서버는 대화형 어플리케이션을 위한 분산 NoSQL 문서 데이터베이스입니다. 카우치베이스의 스케일 아웃 아키텍처는 클라우드 또는 범용 하드웨어 상에서 구동되며 유연한 데이터 모델, 일관성 있는 고성능, 간편한 확장성과 무중단 24 x 365 가용성을 제공합니다. 카우치베이스 서버는 유연한 JSON 모델로 고정 데이터베이스 스키마의 제약 없이 쉽게 어플리케이션을 수정할 수 있으며, submilisecond (1/1000 ms 이하)의 초고속 데이터 입출력 처리는 높은 성능을 보장 합니다. 또한, 간편한 스케일 아웃(scale–out)으로 다운타임 없이 시스템 구성 변경 및 확장을 지원합니다.

화면예시

  • 카우치베이스 화면
  • 데이타 매니저 화면
  • 클러스터 리스트 화면

new아이콘빅데이터 데이터베이스 암호화 솔루션

(주)엔투엠은 보메트릭 데이터베이스 암호화 솔루션을 통해 고성능 암호화와 강력한 접근통제, 안전한 암호 키 관리를 통합 제공하며, 차별화된 기술력을 바탕으로 애플리케이션과 데이터베이스 환경의 변경 없이 데이터 보호를 실현할 수 있도록 지원한다.

카우치베이스 서버 주요 특징

  • 유연한 데이터 모델
    카우치베이스 서버는 고정 스키마가 없기 때문에 모든 레코드는 다양한 구조를 가질 수 있고, 데이터 베이스 내 다른 문서의 수정 없이 언제든지 구조 변경 가능합니다.
  • 쉬운 확장성
    버튼 클릭 한 번으로 시스템 다운 또는 어플리케이션 변경 없이 서비스 작업 부하를 균일하게 유지하면서 25대 혹은 100대 이상의 서버 클러스터로 손쉽게 확장할 수 있습니다.
  • 고성능 연속성 보장
    데이터와 업무 부하를 모든 서버에서 골고루 나누어서 처리하여 카우치베이스 서버의 일관성 있는 응답 시간(1000분의 1초 미만)은 어플리케이션 사용자에게 놀라운 경험을 제공합니다.
  • 24시간 365일 무중단
    카우치베이스 서버를 이용해서 개발한 어플리케이션은 24x365 무중단 서비스가 가능합니다. 업그레이드 작업이 진행 중 일 때에도, 심지어 재난 복구 중일지라도 어플리케이션 다운타임 없이 지속적인 서비스 제공이 가능합니다.

유연한 데이터 모델

JSON 지원
카우치베이스는 기본적으로 JSON 문서를 지원합니다. 각각의 JSON 문서는 다양한 구조를 가질 수 있고, 서로 다른 구조를 가진 여러 문서를 동일한 카우치베이스 버킷에 저장할 수 있습니다. 또한 데이터베이스 내 다른 문서의 구조를 바꾸지 않고 언제든지 문서 구조를 변경할 수 있어서 어플리케이션 기능 추가를 좀더 빨리 할 수 있습니다.
인덱스와 쿼리
카우치베이스는 JSON 문서에 기본 인덱스(Primary Index)와 보조 인덱스(Secondary Index)를 생성할 수 있습니다. 인덱스는 뷰(View)를 통해 생성하고 쿼리 할 수 있습니다. 인덱스 생성은 각 노드에서 저장된 데이터를 대상으로 인덱스를 생성하며 클러스터 내 모든 노드에 걸쳐 고르게 분산되어 있습니다. 쿼리는 카우치베이스 서버에서 문서를 검색하기에 적절한 클라이언트 라이브러리를 사용해서 실행합니다. 쿼리는 특정 키 조회, 범위 검색, 합계 조회 기능 등을 포함합니다. 심지어 재분배(rebalancing) 또는 장애조치(failover) 등과 같이 서버의 구성 변경이 이루어지는 동안에도 쿼리 결과를 제공 합니다.
증분 맵 리듀스
증분 맵리듀스는 대용량 데이터 셋의 실시간 분석을 위한 강력한 집계를 제공합니다. 인덱스는 데이터 변경 부분에 대해서만 증가하면서 갱신되기 때문에 전체 데이터 셋의 배치 작업이 완료될 때까지 기다릴 필요가 없습니다.

쉬운 확장성

자동 샤딩(Auto–sharding) 복제를 통한 확장
카우치베이스 서버는 어플리케이션 요구사항이 변경 되더라도 쉽게 자원을 유지하면서 버튼 클릭 한번으로 클러스터에 서버 추가(또는 삭제)를 할 수 있습니다. 어플리케이션은 서버를 추가하여 RAM과 I/O 용량을 늘려나가면서 수평적으로 확장하게 됩니다. 자동 샤딩(Auto–sharding)은 모든 서버에 균등하게 데이터를 분배하여 어플리케이션 변경 없이 해당 요청을 대상 서버로 직접 전달합니다. 서버 추가 또는 삭제는 클러스터의 지속적인 데이터 가용성을 위해 데이터 재분배(rebalancing) 작업을 시작하게 합니다.
클러스터 간 복제
비즈니스 연속성을 보장하기 위한 재난복구 시스템 구축 시 서로 다른 데이터센터에 있는 여러 클러스터의 데이터를 복제 할 수 있습니다. 또는 최종 사용자에게 가까운 거리에서 데이터를 제공하여 더 나은 사용자 경험(UX, User Experience)을 제공하고자 할 때에도 XDCR을 활용할 수 있습니다.

고성능 연속성 보장

내장 객체 수준 캐시
카우치베이스 서버는 검증된 데이터 캐싱 기술인 memcached 기반의 내장 객체 수준 캐시를 포함하고 있습니다. 카우치베이스 서버는 데이터 읽기 및 쓰기 작업 시 submilisecond (1/1000 ms 이하)의 낮은 대기 시간과 지속적으로 높은 데이터 처리량을 보여줍니다. 또한, 글로벌 캐시 관리를 위해 운영체제(OS)에 의존하기 보다는 어플리케이션의 필요에 따라 데이터베이스 별로 캐시 자원을 할당할 수 있습니다.

24시간 365일 무중단

Zero–Downtime 유지보수
카우치베이스 서버는 운영 중인 라이브 클러스터 환경에서도 유지보수 작업을 할 수 있도록 합니다. 어플리케이션 중단없이 서버 추가 또는 삭제가 가능하고, 실행 중인 시스템에서 소프트웨어 업그레이드를 할 수 있습니다. 또한, 라이브 클러스터 환경에서 온라인 클러스터 전체의 데이터 백업(backups) 및 복구를 할 수 있습니다. 데이터 압축(Compaction)과 인덱스 생성 작업 역시 데이터베이스가 문서를 제공하는 동안 온라인으로 처리합니다.
자동장애 복구와 데이터 복제
카우치베이스 서버의 데이터 복제(data replication) 기능은 클러스터 안에 여러개의 데이터 사본을 유지하기 때문에 범용서버(Commodity server) 또는 가상머신을 사용하는 경우에는 어플리케이션 고가용성을 확보를 위해서 특별히 노드장애로부터 보호해야 합니다. 복제 데이터(Replica data)는 단일 노드 장애 발생 시 그 영향을 줄이기 위해 클러스터의 모든 노드에 분산되어 있습니다. 사용자가 원한다면, 카우치베이스 서버는 자동 장애복구 기능과 복제 노드의 활성화를 지원합니다.
관리 및 모니터링 UI
카우치베이스 서버는 고급 모니터링과 풍부한 관리자 웹 인터페이스를 제공합니다. 관리자는 클러스터 전체 통계는 물론 개별 노드에서 장애 발생 시 신속한 장애조치(troubleshooting)을 위해 상세한 drill–down 정보를 제공하는 실시간 차트를 통해 전체 클러스터를 모니터링 할 수 있습니다. 또한, 카우치베이스 서버에서 제공하는 서버 관리 REST API (Couchbase Server management REST API)를 이용해서 Nagios와 같은 외부 모니터링 및 관리 시스템과 카우치베이스 서버를 간단하게 연동 할 수 있습니다.
신뢰성 있는 스토리지 아키텍처
카우치베이스 서버는 모든 데이터를 비동기적으로 디스크에서 유지하고 있어서 실제 물리적인 RAM 크기보다 큰 데이터셋을 저장할 수 있습니다. 카우치베이스는 RAM과 디스크 사이에 데이터를 자동으로 이동시키고 객체 수준 캐시의 워킹 셋 데이터를 적정 수준으로 유지합니다. 카우치베이스의 추가 전용(append–only) 스토리지 계층은 항상 파일의 마지막에서 지속적으로 쓰기 업데이트가 이루어지기 때문에 디스크의 쓰기 성능을 향상시킵니다. 데이터 변경으로 인한 뮤테이션(mutation)은 먼저 RAM에 우선 커밋한 다음 디스크 쓰기 대기열(Queue)에 추가되어 각 문서 커밋을 실행합니다.
SDK
Java, C#, PHP, C, Python, Ruby 등 다양한 언어를 완벽하게 지원하는 SDK를 사용하여 원하는 언어로 응용 프로그램을 개발할 수 있습니다. 기존의 다양한 memcached 라이브러리가 있지만 카우치베이스에서 제공하는 새로운 SDK 패키지 사용을 권장합니다. 이러한 "smart" SDK는 클러스터 토폴로지를 인식하여 데이터 처리시 해당 데이터가 있는 노드로 직접 요청을 보냅니다.

※ 바로가기버튼을 누르시면 Couchbase 홈페이지를 통해 상세한 정보를 보실수 있습니다.

카우치베이스 총판 영업문의 : 박준연(dauh@n2m.co.kr)

Couchbase 바로가기