CUBRID

CUBRID 是一个全面开源，且完全免费的关系数据库管理系统。CUBRID为高效执行线上交易處理(OLTP)进行了高度优化，特别是需要处理大数据量和高并发请求的复杂商务服务。通过提供独特的最优化特性，CUBRID可以支持更多的并发请求，更少的响应时间。

CUBRID名称的起源
CUBRID这个名称，实际上是两个单词的组合:"Cube"(立方体)和"Bride"(桥梁)。对CUBRID而言，"Bride"代表"data bridge"(数据桥)，而"Cube"代表储存数据的盒子，寓意为放在其中的数据提供安全。因此，CUBRID代表可以为机密信息提供安全保障。

产品许可信息(License Policy)
CUBRID针对DBMS引擎和应用程序编程接口(API)，使用了不同类型的许可。DBMS引擎使用GNU通用公共许可协议第二版或更高版本(GPL v2.0 or later)，允许用户发布，修改和获取源码。应用程序编程接口(API)使用伯克利软件分发(BSD)许可协议，商业用户可以自由开发和分发基于CUBRID的应用程序，而不必被迫开源自己的衍生产品。CUBRID之所以采用两种不同类型的许可，是为了减少带给独立软件开发商(ISV开发和发布各种基于CUBRID应用的限制。

CUBRID license policy的许可政策，同其他数据库系统不同。如果要发布或销售基于MySQL的应用，需要开放应用源码或购买商业许可。而CUBRID由于针对引擎和API使用了不同的许可政策，从而降低了对传统开源数据库管理系统的使用限制，有效的为商业公司减轻了开支。

支持平台(Supported platform)
CUBRID可用於Microsoft Windows和Linux（两者为大多数发行版本）以及32位和64位体系结构。

接口(Interface)
CUBRID的服务器和官方程序库是使用C/C++开发的，而GUI数据库管理工具CUBRID Manager，以及其他的CUBRID管理工具，则是使用Java开发的。

命令列（Command Line）
CUBRID提供了一个称为CSQL的命令行管理工具，通过此工具，用户可以在CUBRID服务器上上执行SQL语句。 并实现架构，障碍排除，事务控制等相关的内部命令例如： 
此工具通常可以在一下两种模式之一中使用： 
 CS (client/server)模式：連接到本地或遠程CUBRID服務器
 SA (stand alone)模式：主要用於管理目的

编程接口(Programming Interface)
CUBRID提供包括JDBC、PHP/PHO、ODBC、ADO.NET、CCI、NODE.JS、PERL、Ruby和Python等在内的特定编程语言的API。

图形用户接口(Graphical User Interface)
CUBRID开发了以下Graphical User Interface： 
 CUBRID Manager：是在BSD license下开发的一款适用于Microsoft Windows和Linux的用于查询浏览器和数据库管理的工具
 CUBRID Admin：是在BSD license下开发的一款适用于Microsoft Windows的数据库管理的工具
 SQLGate：是CHEQUER Corp研发的适用于Microsoft Windows的查询浏览器工具
 CUBRID Migration Toolkit: 是一款允许用户把数据库从Oracle, MS-SQL, MySQL和旧版CUBRID移动到最新版本CUBRID服务器的工具

CUBRID性能

高可用性（High Availability）
CUBRID HA通過無共享群集(shared-nothing clustering)，自動故障轉移和手動故障回復機制，提供了負載平衡，故障容许和連續的服務可用性。CUBRID的3層體系結構允许通過兩級自動故障轉移對伺服器的高可用性提供本地支持：伺服器故障轉移和服務器故障轉移。

扩展性和维护性（Scalability and Maintainability）
 备份（Backup): CUBRID支持在线，离线和增量备份；
 API负载均衡（API-level load balancing)；
 查询计划缓存（Query plan caching）；
 Indexes: CUBRID支持單列和多列B+树索引,用户可以利用CUBRID創建以下類型的索引：
索引和反向索引; 
唯一索引和反向唯一索引; 
基於功能的索引;
篩選索引；
 资料表格分割（Table Partitioning）；
 SQL Support:CUBRID實現了ANSI SQL：1999標準的較大子集，並擴展了更高版本的SQL標準和自定義功能
 多种数据类型支援（Various Data Types supported）:
 数值:
 integer numerics: SMALLINT (16 bit), INTEGER (32 bit), BIGINT (64 bit)
 floating point numerics: FLOAT (32 bit), DOUBLE (64 bit)
  arbitrary precision numerics: NUMERIC
 monetary values: MONETARY (double precision floating point)
 String值:
  fixed-length character and bit strings: CHAR, BIT
  variable-length character and bit strings: CHAR VARYING, BIT VARYING
 日期和時間值:
  date values: DATE
  time values: TIME
  date and time values: DATETIME, TIMESTAMP (internally stored as a Unix timestamp)
 整合值: SET, MULTISET, LIST
列举（defined Enumerated type|enumerations）: ENUM
大对象（large objects）: BLOB, CLOB
 JS 对象简谱（JavaScript Object Notation）: JSON

最新版本特性
CUBRID的最新版本，是2019年12月发布的CUBRID 10.2。與CUBRID 10.1版本相比，CUBRID 10.2添加了一個在線並行加載器（online parallel loader），將海量數據加載性能提高了10倍。此外，CUBRID 10.2为了提高给其索引功能，还添加了JSON数据类型和在线并行索引（online parallel index）。一般資料表運算式(Common Table Expressions, CTE)也在CUBRID 10.2版本中得到扩展。 為了提高穩定性, CUBRID 10.2还添加了Double Write Buffer，以防止部分頁面寫到磁盤上以及主要代碼的重構和錯誤修復。

产品开发历史

参考

相关链接

 CUBRID企业网站

開源資料庫管理系統