技术开发 频道

Ingres和VectorWise合作图谋BI市场

  【IT168资讯】Ingres和VectorWise最近宣布他们将在明年联合进军数据仓库市场,消息一公布后,各种新闻和社区都在热论,此次合作主要集中在矢量处理(因此名字也叫作VectorWise)方面,以提高计算效率,但仍然有许多人发出了不同的声音。

  VectorWise去年才成立,它是从Centrum Wiskunde & Information(CWI)公司剥离出来的,总部设置阿姆斯特丹,它是一基于列的数据库项目MonetDB的老东家。VectorWise的创始人(Marcin Zukowski和Peter Boncz)都为为这个项目工作过,但VectorWise是基于Marcin的博士论文“MonetDB/x100 – 在CPU缓存中的数据库管理系统”实现的。

  这项研究主要包括四部分内容:CPU计算机效率、列的使用、压缩和联合扫描。

  我就不把时间花在计算效率上了,因为很多媒体都有相关报道。简单地说,通过利用现代CPU的特性进行矢量处理,使用SQL时可以获得接近于编译C时的编译性能,对于计算密集型任务要快几个数量级。不过我还没有看到VectorWise使这个对用户透明的报道,因此,你应该可以继续像往常一样使用SQL,只是能够更快地获得结果了。

  公告的第二部分内容主要是讲合并后的Ingres/VectorWise产品将使用混合存储架构进入市场,同时使用基于行的存储和基于列的存储。但对实时更新,查找(如支持MDM时)或查询时只需要读几行等并不是好消息,不难想象,你可能采取分割或复制数据存储,以优化不同类型的操作。

  VectorWise最新的两个特性似乎一直被忽略,首先是压缩,好像大家都在用高压缩比,因此看起来似乎没什么大不了的,但VectorWise并未将重点放在获得非常好的压缩比上,毕竟目前的存储都比较便宜了,它主要将重点放在解压缩速度上:一方面要权衡I/O(越高的压缩越不好),另一方面要看处理器的性能(解压时越快越好)。显然后者需要的资源比前者要多得多。

  最后,VectorWise使用的是联合扫描,他们不是第一个这么做的,SQL Server和DB2都有这方面的能力,但VectorWise将目标放在更复杂的东西上。当你有两个查询都要扫描相同的数据时,你可以只读取一次数据,但结果可以传到两个查询中去,从而大大减少了I/O。

  当然,我们不得不等待其真正实现,不过目前看来希望还是很大的,数据仓库市场仍然有许多问题亟待解决,VectorWise给我留下的印象很深,此外,它与Ingres合作将会使它更快速地接触到更多的用户。

0
相关文章