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 을 지원.