我们观察到InfiniDB采用的MySQL版本是5.1.39.
再来观察数据文件物理存储,在创建了一些表以后,data1目录下创建了子目录000.dir,下面还有很多类似的子目录。最外层子目录下有FILE000.cdf、FILE001.cdf等,可以看出,数据文件命名对用户是无法辨认的,这为数据备份带来了难度。而前文提到的infobright只要在数据库进程关闭时将某个数据库的目录备份即可。
图3
InfiniDB企业版和社区版的具体区别。参见http://www.calpont.com/resources/community,可见社区版仍然支持DML操作,这点比infobright强,但付出的代价是不支持压缩,但即使是企业版压缩比infobright也差很多。我们对tpch scala=10的10GB数据导入以后,占用空间达8775933952字节,只压缩了13%,而同样的数据,infobright占用1951699241字节,压缩了81%。
二、数据库的功能
数据库的基本功能有CRUD(表的创建、插入、更新、删除)等方面,下面我们逐个测试。
下面创建一个test数据库,然后在其中创建一个表t1,可以观察到默认的存储引擎仍然是MyISAM。
这是一个需要注意的地方,如果要使用InfiniDB引擎,或者在创建表时显式说明,或者设置默认存储引擎为InfiniDB,建议用前一种。因为后一种使某些查询语句失效,影响查询执行。最简单的语法都报错。