IT/데이터베이스

[CUBRID] 소개

chn1002 2022. 5. 16. 09:11

[CUBRID] 소개

 

CUBRID 는 오픈소스 라이센스(아파치 라이센스 2.0)에 관계형 데이터베이스 관리 시스템 이다. CUBRID 서버 및 공식 라이브러리는 C 또는 C++ 로 구현되어 있으며, GUI 도구(CUBRID Manager)는 자바로 구현되어 있다.

 

주요 기능

  • RDBMS 기본 기능 지원
    • 트랜잭션 완벽 보장: COMMIT/ROLLBACK/SAVEPOINT
    • 장애 발생 및 백업 복구 시 트랜잭션 일치성 보장
    • HA 환경에서 트랜잭션 일치성 보장
    • ANSI SQL 표준 및 확장된 SQL 지원: 계층형 쿼리, CTE (Common Table Expression)를 이용한 재귀적 쿼리 등
    • VIEW/TRIGGER/PRIMARY KEY/FOREIGN KEY/SERIAL 지원
  • 고성능 보장
    • MVCC (Multiversion Concurrency Control) 지원
    • 멀티 쓰레드/멀티 서버 구조
    • 브로커 미들웨어에 의한 커넥션 풀링/로드 밸런싱/Proxy 기능 지원
    • 비용 기반 옵티마이저 지원(CBO)
    • 쿼리 플랜 캐쉬 지원
    • 쿼리 결과 캐쉬 지원
    • Disk I/O 최적화를 통한 성능 병목 구간 개선
    • 고성능 인덱스(Multi-Range/Covered/Reverse/Skip-Scan/Function based/Filtered Index) 지원
  • 대용량 및 확장성 보장
    • 멀티 볼륨 및 볼륨 자동 추가 기능 지원
    • DB/테이블/컬럼/인덱스 무제한 생성 가능
    • 1:N 복제 구성을 통해 부하 분산 및 서비스 확장 가능
    • 테이블 파티셔닝(Partitioning)을 통한 데이터 분할 관리 기능
  • 안정성 및 운영 편의성 제공
    • 온라인/오프라인 백업 및 복구 지원
    • 증분 백업 지원 및 병렬/압축 백업 지원
    • 장애 발생 시점 또는 특정 시점으로의 복구 지원
    • 권한 상속을 통한 사용자/그룹별 권한 관리 기능
    • HA 환경에서 장애 발생 시 자동절체(Auto-Failover) 지원
    • HA 환경에서 Sync/Async 동작 모드 지원
  • 개발 편의성 제공
    • 다양한 SQL 문법/함수 지원을 통해 Oracle 및 MySQL 구문 호환성 향상
    • JDBC/PHP/ODBC/OLEDB/ADO.NET/Python/Ruby/Go 등 다양한 인터페이스 지원
    • GUI 기반 통합 운영 도구 CUBRID Manager 제공
    • 스키마/데이터를 CUBRID로 마이그레이션하는 도구 CUBRID Migration Toolkit 제공
  • 보안성 제공
    • 테이블 기반의 TDE(Transparent Data Encryption) 지원
    • 드라이버와 서버 간의 패킷 암호화 지원

 

개발 언어 및 지원 플랫폼

  • CUBRID 서버 및 공식 라이브러리는 C 또는 C++ 로 구현.
  • GUI 도구(CUBRID Manager)는 자바로 구현.
  • 지원 OS
    • Linux
    • Window
  • 인터페이스
    • JDBC
    • PHP
    • ODBC
    • OLEDB
    • ADO.NET
    • Python
    • Ruby
    • node.js
    • GO
    • etc.
  • SQL 실행을 위하여 커맨트 라인 도구인 CSQL 를 지원.
  • GUI 기반 통합 운영 도구(CUBRID Manager), DB Migration Toolkit 을 지원.

CUBRID Manager