1、infobright商业网站:http://www.infobright.com/

2、infobright社区交流网站:http://www.infobright.org/

3、mysql对infobright的介绍:http://dev.mysql.com/tech-resources/articles /datawarehousing_mysql_infobright.html

4、关于infobright的介绍视频:http://www.infobright.com/Resource-Library /Webcasts-Podcasts/?infobright_product_demo

 一、Infobright的基本特征:
优点:
  查询性能高:百万、千万、亿级记录数条件下,同等的SELECT查询语句,速度比MyISAM、InnoDB等普通的MySQL存储引擎快5~60倍
  存储数据量大:TB级数据大小,几十亿条记录
  高压缩比:在我们的项目中为18:1,极大地节省了数据存储空间
  基于列存储:无需建索引,无需分区
  适合复杂的分析性SQL查询:SUM, COUNT, AVG, GROUP BY

限制:
  不支持数据更新:社区版Infobright只能使用“LOAD DATA INFILE”的方式导入数据,不支持INSERT、UPDATE、DELETE
  不支持高并发:只能支持10多个并发查询




下载地址:

http://www.infobright.org/Download/ICE/

到这里,可以选择自己所需要的软件包。

安装之前需要安装

yum install gcc*  cur*   nscd -y

service nscd restart

即可用 rpm来安装

tar -zxvf infobright-4.0.4-0-linux-i686-ice.tar.gz mv infobright-4.0.4-i686/
/usr/local/ cd /usr/local ln -s infobright-4.0.4-i686/ infobright ./install-infobright.sh
--datadir=/usr/local/infobright/data   --cachedir=/usr/local/infobright/cache --port=3307  
--config=/etc/my-ib.cnf --socket=/tmp/mysql-ib.sock   --user=mysql --group=mysql
里面会有很多提示,一步一步安装吧,把要写的写一下吧。
Enter number here[1-7]: 1
We successfully submitted your information to our server. Thank you for registration.  
启动infobright /etc/init.d/mysqld-ib start

vi /etc/profile

export PATH=/usr/local/infobright/bin:$JAVA_HOME/bin:$PATH

source /etc/profile

这样就可以直接mysql进去了。
















以下来自http://blog.phpcxz.com/2012/10/infobright_install_config.html


infobright 安装与配置及使用详细教程

2012年10月16日| 发布人:寒冰[phpqinsir]| 分类: Linux服务器, 数据库| 标签: infobright, mysql

原创文章,转载请注明出处。

2012年10月24日更新,增加了数据导入方法。

近来为了统计游戏数据,用到了 infobright 这款软件。来看看大家对它的介绍:

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

Infobright是一个与MySQL集成的开源数据仓库(Data Warehouse)软件,可作为MySQL的一个存储引擎来使用,SELECT查询与普通MySQL无区别。

一、Infobright的基本特征:
优点:
查询性能高:百万、千万、亿级记录数条件下,同等的SELECT查询语句,速度比MyISAM、InnoDB等普通的MySQL存储引擎快5~60倍。
存储数据量大:TB级数据大小,几十亿条记录。
高压缩比:在我们的项目中为18:1,极大地节省了数据存储空间。
基于列存储:无需建索引,无需分区。
适合复杂的分析性SQL查询:SUM, COUNT, AVG, GROUP BY。

限制:
不支持数据更新:社区版Infobright只能使用“LOAD DATA INFILE”的方式导入数据,不支持INSERT、UPDATE、DELETE。
不支持高并发:只能支持10多个并发查询。

二、Infobright 安装与基本用法:
1、以前的版本没有提供rpm包,现在针对red hat 系列产品提供了rpm的安装包。

cd /usr/local/srcwget http://www.infobright.org/downloads/ice/infobright-4.0.7-0-x86_64-ice.rpmrpm -i infobright-4.0.7-0-x86_64-ice.rpm

这样就下载安装OK了。

官方下载地址:http://www.infobright.org/Download/ICE/

我的centos 系统是64位的,所以,下载的是64位的infobright社区版本。企业版本是要收费的,而且费用很昂贵。

如果,你不知道自己的centos是否已经安装,可以通过如下命令来检测:

rpm -qa|grep infobright

或者:

rpm -q infobright

通过以上方式是默认的安装。作为学习研究,我们肯定不希望默认安装。希望,能更改软件的安装位置。比如,将infobright安装到/opt/infobrgiht 目录下面。那么可以在安装的时候通过如下命令实现:

rpm -ivh infobright-4.0.7-0-x86_64-ice.rpm --prefix=/opt/infobright

注意:不要把ICE安装在root或者home目录下面,可能会和mysql引起冲突。

2、相关的配置文件路径
默认安装情况下相关配置文件位置如下:

配置文件:[/etc/my-ib.cnf]brighthouse.ini文件:[/usr/local/infobright-4.0.7-x86_64/data/brighthouse.ini]数据存放目录datadir:[/usr/local/infobright-4.0.7-x86_64/data]缓存目录CacheFolder:[/usr/local/infobright-4.0.7-x86_64/cache]socket位置:[/tmp/mysql-ib.sock] port端口:[5029]

可以通过执行如下程序来设置以上配置:

/usr/local/infobright/postconfig.sh

然后,根据提示来进行更改配置吧。

注意:这个脚本的运行必须保证infobright没有运行。

3、启动和停止
启动命令:

/etc/init.d/mysqld-ib start

停止命令:

/etc/init.d/mysqld-ib stop

4、卸载
有时候配置出错,又或者学习使用,可能会遇到卸载的情况。命令如下:

rpm -e infobright

5、配置infobright

vi /usr/local/infobright/data/brighthouse.ini

ServerMainHeapSize为IB所使用内存的最大值(不包括bh_loader),如果是专用DB服务器,可适当调大,保证在业务最高峰,系统swap交换不高即可。

LoaderMainHeapSize由于是列式存储,IB需要将多行数据各列数据组合后写入数据块,如果导入表的列数很多,字段很长,将该值调高,加快导入速率(导入前set autocommit=0,完成后commit+复原,可大幅提高导入效率)。

ControlMessages 为IB错误日志记录类型,实验环境设为4有利于排错,成熟的生产环境设为2或3即可。

KNFolder 为知识网格所在目录,通常情况下大小都很小,直接放在data目录下即可。

根据自身的物理内存大小修改ServerMainHeapSize、ServerCompressedHeapSize、LoaderMainHeapSize的值,有参考:

############  Critical Memory Settings ############# System Memory    Server Main Heap Size     Server Compressed Heap Size   Loader Main Heap Size# 32GB                 24000                      4000                       800# 16GB                 10000                      1000                       800#  8GB                  4000                       500                       800#  4GB                  1300                       400                       400#  2GB                  600                        250                       320

6、进入infobright
infobright是以MYSQL存储引擎方式运行的。按照以往MYSQL存储引擎必须配置MYSQL才能使用。但是,infobright 不需要。默认自带了MYSQL主程序。通过以下命令即可进入infobright的操作界面:

mysql-ib

这个时候,我们为infobright分配一个能远程连接的账号,如下:

GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY '12345678';

这样,我们就可以通过MYSQL的客户端程序,只需要装端口号修改为infobright的默认端口5029即可连接infobright仓库了。

7、创建一个Infobright表
请注意与MYSQL的其他存储引擎的区别。

DROP TABLE IF EXISTS `visit`;CREATE TABLE `visit`(`id`int(10) NOT NULL COMMENT '主键',`ip` varchar(15) NOT NULL COMMENT '访问IP')ENGINE = BRIGHTHOUSE DEFAULT CHARSET utf8 COMMENT '用户访问记录';

注:BRIGHTHOUSE存储引擎建表时不能有AUTO_INCREMENT自增、unsigned无符号、unique唯一、主键PRIMARY KEY、索引KEY。

8、数据导入。
因为我们介绍的是infobright ICE社区版本,所以,导入数据只能使用MYSQL的load data file 的方式进行数据导入。因为,ICE社区版不支持upadte、delete、insert。所以,一旦数据导入出错,只能删掉表中所有数据重来。

1,"192.168.1.1"2,"192.168.1.1"

将上述两行保存为一个文本文件:data.txt。我们把它放在linux下的 /opt/data/目录下。
登录Infobright的shell界面。然后,执行如下代码:

load data infile '/opt/data/data.txt'into table visit fields terminated by',';

或以下这一句:

load data infile '/opt/ftp_dir/ftp002/data.txt'into table visit fields terminated by',' lines terminated by'\n';

这样就轻松将数据导入了。

关于infobright数据格式的一些默认值:

CLAUSE                   DEFAULT VALUE FIELDS TERMINATED BY       ';'(semicolon) FIELDS ENCLOSED BY         '"'(double quote) FIELDS ESCAPED BY          ''(none)

就拿我们上面的导入来说吧。我刚开始的时候,把IP地址放到了单引号里面,结果死活搞不到表里面去。把度娘搜烂了都没有找到合适的答案。最后,通过infobright的英文手册才找到了答案。

注意:data.txt中每个字段之间对应的分隔符根据很多的经验得出,只支持单个字节的字符。

9、其他
因为我们只能安装infobright的社区版ICE,IEE是企业版,收费的,挺贵。所以,这个ICE社区版只能通过 LOAD DATA INFILE 导入数据。不支持:INSERT、UPDATE、DELETE。不支持高并发,所以这个只能作为线下数据分析。不能作为线上的对外的一个高并发的解决方案。

关于infobright的安装使用就介绍到这里。

因为,我们公司刚好在使用这款软件来作游戏数据的统计。所以,就把我的研究和使用过程记录下来。

如果有遗漏和错误之处,请留言告诉我。谢谢!

上一篇:MySQL group by 用法解析

下一篇:Apache配置虚拟机配置文件代码备忘

发表评论

  1. 寒冰[phpqinsir]

    2012年11月16日10:37

    <a class="comment-reply-link"  addComment.moveForm("comment-138", "138", "respond", "148")" href="http://blog.phpcxz.com/2012/10/infobright_install_config.html?replytocom=138#respond">回复 | 引用 | #1

    我再补充一点:如果在启动infobright的时候,如果提示:
    Error – /etc/my-ib.cnf was not found! Please make sure Infobright installation completed and activated successfully.
    那么,去执行一下:
    /usr/local/infobright/postconfig.sh