走进列数据库Infobright的世界
创始人
2024-07-11 08:51:33
0

Sysbase可以说是列式数据库的先驱,Sysbase IQ 15 就是Sybase 目前***的列式数据库。它具有强大的功能,包括数据的快速加载、超高速的分析性能、强大的业务智能分析、领先的数据建模能力等等。 Infobright是一个基于MySQL的数据仓库系统,共工的不周山的blog上有挺详细的介绍。

同样是列式数据库,但是Infobright和Sybase IQ系列还是有很大的不同。Infobright采用的Knowledge Grid来组织数据,Infobright内部是没有索引,就这点就节省了不少的空间。而Sybase IQ系列还是使用了索引,而这些索引我个人的理解就是位图索引的改进版。白皮书上说,Infobright的数据压缩比可以是10:1到40:1,个人拿庞大的日志数据库做了个小小实验,感觉压缩也没那么夸张。如果依据位图索引的思想,每列数据的相似度越高就会具有越高的压缩比。Infobright应该也是满足这一点的,但是具体Knowledge Grid内部如何实现还不清楚,有待继续考究。  

Infobright的优点有很多,简单列举如下:  

Infobright的优点:

(1)高压缩比率

(2)快速响应复杂的分析查询语句

(3)随着数据库的逐渐增大,查询和装载性能基本保持稳定

(4)没有特殊的数据仓库模型(比如星状模型、雪花模型)要求

(5)无需要物化视图、复杂的数据分区策略、索引

(6)实施和管理简单,需要极少的管理

(7)和众多的BI套件相容,比如Pentaho、Cognos、Jaspersoft。

Infobright有两个版本ICE和IEE,目前ICE的版本是3.3.1,支持64位Linux和32位windows。ICE不支持DML,也就是不支持insert、update等操作。

粗糙集(Rough Sets)是Infobright的核心技术之一。Infobright在执行查询的时候会根据知识网络(Knowledge Grid)把DP分成三类:

相关的DP(Relevant Packs),满足查询条件限制的DP

不相关的DP(Irrelevant Packs),不满足查询条件限制的DP

可疑的DP(Suspect Packs),DP里面的数据部分满足查询条件的限制

下面是一个案例:

如图所示,每一列总共有5个DP,其中限制条件是A>6。所以A1、A2、A4就是不相关的DP,A3是相关的DP,A5是可疑的DP。那么执行查询的时候只需要计算B5中满足条件的记录的和然后加上Sum(B3),Sum(B3)是已知的。此时只需要解压缩B5这个DP。从上面的分析可以知道,Infobright能够很高效地执行一些查询,而且执行的时候where语句的区分度越高越好。where区分度高可以更精确地确认是否是相关DP或者是不相关DP亦或是可以DP,尽可能减少DP的数量、减少解压缩带来的性能损耗。在做条件判断的使用,一般会用到上一章所讲到的Histogram和CMAP,它们能够有效地提高查询性能。

多表连接的的时候原理也是相似的。先是利用Pack-To-Pack产生join的那两列的DP之间的关系。

比如:SELECT MAX(X.D) FROM T JOIN X ON T.B = X.C WHERE T.A > 6。Pack-To-Pack产生T.B和X.C的DP之间的关系矩阵M。假设T.B的***个DP和X.C的***个DP之间有元素交叉,那么M[1,1]=1,否则M[1,1]=0。这样就有效地减少了join操作时DP的数量。

前面降到了解压缩,顺便提一提DP的压缩。每个DP中的64K个元素被当成是一个序列,其中所有的null的位置都会被单独存储,然后其余的non-null的数据会被压缩。数据的压缩跟数据的类型有关,infobright会根据数据的类型选择压缩算法。infobright会自适应地调节算法的参数以达到***的压缩比。

原文链接:http://blog.chinaunix.net/u2/72637/showart_2306093.html

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...