infobright: 基于mysql的数据仓库综述

时间:2022-09-05 02:52:57

infobright: 基于mysql的数据仓库综述

摘要:infobright 是基于mysql的,但不装mysql亦可,因为它本身就自带了一个。mysql可以粗分为逻辑层和物理存储引擎,infobright主要实现的就是一 个存储引擎,但因为它自身存储逻辑跟关系型数据库根本不同,所以,它不能像innodb那样直接作为插件挂接到mysql,它的逻辑层是mysql的逻辑 层加上它自身的优化器。

关键词:infobright;mysql整合;数据仓库;高数据压缩比

一、技术概况

infobright进行复杂的查询时,通过其专利的知识网格(knowledge grid)和综合优化技术,能够实现优异的性能表现。数据在导入infobright之后将被高度压缩并以“数据块 (data pack)”的形式存储,于此同时,知识网格会自动创建一个非常紧凑的元数据,其中包含了统计数据和数据块之间的关系信息。因此当接收到查询时,infobright查询优化器可以通过元数据智能的决定哪些数据块与查询请求相关,并将之解压。基于知识网格技术,infobright不需要专门对数据进行划分,也不需要建立索引,从而节省查询处理时间,提升响应速度。

基于列的数据架构 infobright实施、管理非常简便,不需要人工调试、数据分区和创建索引,有效的降低了管理成本,此外infobright不需要运行在特殊的专用硬件上,同时它的数据压缩比很高(10:1—40:1),比任何其他数据仓库系统对存储设备的占用都小。这些特性让infobright为企业it部门降低了预算上的负担。

二、功能

infobright 企业版——分析型高性能数据仓库

在随时在线的今天,需要进行业务分析的数据规模惊人增长。商业决策需依托海量数据的实时访问,企业才能保证正确方向。

infobright是一个基于独特的专利知识网格技术的列式数据库,能够降低您90%的管理工作量。使用infobright不需要创建特殊的数据库模式,无需创建和维护索引,无需对数据进行分区,甚至不需要手动调整,知识网格就会在原始数据导入时,自动创建和维护数据,并用以优化每一个查询。在一台pc服务器上,infobright企业版在对50tb甚至更多数据量进行多并发复杂查询时,能够显示出令人惊叹的速度,相比于mysql,其查询速度提升了数倍甚至数十倍。在同类产品中,infobright的单机性能处于领先地位。

三、高数据压缩比

1.行业领先的数据压缩技术

如果您的系统数据量每天都在快速增长,受限于磁盘的容量与传输速率,您进行备份的成本与时间将快速增加,直至您无法承受。幸运的是,软件技术的发展速度超越了磁盘数据传输技术的发展速度,infobright可以将数据以10:1至40:1的比率压缩,通过知识网格与列式架构的结合,极大的提升了查询响应速度,并降低了存储成本。通过列式架构和超压缩算法,10tb的原始数据在infobright中将被压缩至1tb,对某些类型的数据,最高可以达到40:1的压缩率。并且infobright压缩的速度非常快,目前已经可以以每小时1tb甚至更快的速度向infobright导入数据,从而让您的数据仓库系统接近“实时”工作的状态。

如果您的企业正苦于应对剧增的数据规模、增长的客户需求以及较高的用户期望,同时优化it投入,infobright先进的数据库技术就可能帮助到您。让您的it团队能专注于快速完成业务交付而非基础架构,才能创造更大商业价值。

2.mysql整合

(1)与mysql整合

infobright是基于mysql开发的分析型数据库,mysql原有用户可以通过infobright得到理想的数据仓库解决方案,它使用mysql用户熟悉的界面,对基于mysql开发的应用不需要进行改动,就可以无缝升级到infobright。与mysql相兼容的bi工具及etl工具,infobright都能完美支持。

三、技术特性

sql支持 全面支持ansi sql-92标准和sql-99扩展标准中view和存储过程的部分

1.灵活的schema支持。支持所有schema设计;

2.行业标准接口。

支持标准数据库接口,包括odbc、jdbc和本地连接;

3.api接口支持 支持的api接口包括c、c++、c#、borland delphi (via dbexpress)、 eiffeel、smalltalk、 java (with a native java driver implementation), lisp, perl, php, python, ruby, realbasic, freebasic, and tcl;

4.dml支持。支持dml语句(insert、update、delete);

5.并发用户数。支持至多500个数据库用户,32个并发查询(视cpu核心数与内存大小而定);

6.操作系统支持。windows server 2003/2008 (64-bit, 32-bit), solaris 10 (64-bit), red hat enterprise linux 5 (64-bit),novell suse linux enterprise 10, red hat enterprise linux 5 advanced server (64-bit),debian ‘lenny’ (64-bit), or centos 5.2 (64-bit)

7.处理器支持。最少4g内存的intel和amd x86架构服务器(建议16g内存或更多)

8.数据导入方式支持。infobright企业版支持两种数据导入方式。通过文本方式向mysql中导入,或通过文本和二进制文件的方式向infobright中导入(最高280gb/小时)。

2.在线分析

无论您的公司是在线广告网络,零售商,手机广告服务提供商或是任何其他的制造业,分析的重要性都与与日俱增,了解您网站的性能、您的客户的访问行为、评估广告和营销活动的效果,并分析成功与失败之间的差异,这能够让您企业与竞争对手拉开差距,取得最终的胜利。而这需要您对来自网页和离线方式的大量数据进行有效的利用,infobright让您能够用低成本的方式轻松获得这种能力,相比与其他类似的方案,infobright的成本低廉,管理简便,降低了您获得竞争优势的门槛。

3.数据集市(data mart)

数据集市通常定义为包含特定应用分析的数据仓库, 其分析应用与用户的业务紧耦合,具有较强的专业特性,因此通常针对集团内部某个特定的部门建设。在过去几年里,数据集市系统的实施数量快速增长,这种增长是由商业用户快速查询的需求驱动的。

过去数据集市项目由集团的it部门统一实施,而现在,越来越多的集团内部用户部门自行实施数据集市项目,并由内部it经理担任实施负责人,以确保数据集市的功能与需求吻合。

四、infobright几大优点:

1.高压缩比率,平均压缩比可达10:1,甚至可以达到40:1,我用infobright把3.1g的数据存成不足300m。

2.列存储,即使数据量十分巨大,查询速度也很快。用于数据仓库,处理海量数据没一套可不行。

3.不需要建索引,就避免了维护索引及索引随着数据膨胀的问题。把每列数据分块压缩存放,每块有知识网格节点记录块内的统计信息,代替索引,加速搜索。

4.单一台服务器可以高效地读写30t数据。具有可扩展性,这里是指对于同样的查询,当数据量是10t时,它耗费的时间不应该比1t数据量时慢太 多,基本是一个数量级内。

与mysql对比:

1.infobright适用于数据仓库场合,即非事务、非实时、非多并发;分析为主;存放既定的事实(基本不会再变),例如日志,或汇总的大量的 数据。所以它并不适合于应对来自网站用户的请求。实际上它取一条记录比mysql要慢很多,但它取100w条记录会比mysql快。

2.mysql的总数据文件占用空间通常会比实际数据多,因为它还有索引。infobright的压缩能力很强大,按列按不同类型的数据来压缩。

3.服务形式与接口跟mysql一致,可以用类似mysql的方式启用infobright服务,然后原来连接mysql的应用程序都可以以类似的 方式连接与查询infobright。这对熟练mysql者来说是个福音,学习成本基本为0。

infobright有两个版:开源的ice及闭源商用的iee。ice提供了足够用的功能,但不能 insert,delete,update,只能load data infile。iee除提供更充分的功能外,据说查询速度也要更快。

五、不足之处

不支持数据更新:社区版infobright只能使用“load data infile”的方式导入数据,不支持insert、update、delete

不支持高并发:只能支持10多个并发查询

参考文献:

[1]/infobright/

[2]/infobright/?bdclkid=fgu_j5nppoo1yvgffipymhwiw7tk0gscfqe_15odworp

[3] /blog/?p=283。

上一篇:试论实现制作类工具软件“学做合一”教学方法... 下一篇:试论网络数据信息管理软件中间层设计