最近在搞后台数据分析,涉及大量的数据,他们使用的数据仓库是InfoBright(简称ib),ib提供社区版本(ICE)和商业版本(IEE)。两者区别较大。不过对于即时性要求不是特别严格的需要,社区版本勉强够用了。
两者之间的区别,参考博文: Infobright分享<1>:发展现状和ICE-IEE间区别
本文主要是指导ib的安装及使用(如果涉及boost及其他基础软件版本过低,请自行升级安装)
首先从InfoBright官网下载源码,的版本是:infobright-4.0.7-0-src-ice.tar.gz
编译安装tar zxvf infobright-4.0.7-0-src-ice.tar.gz
cd infobright-4.0.7
make PREFIX=/usr/local/infobright EDITION=community release
make PREFIX=/usr/local/infobright EDITION=community install-release
mkdir /usr/local/infobright/conf /usr/local/infobright/data /usr/local/infobright/logs
chown -R mySQL.mysql /usr/local/infobright/data /usr/local/infobright/logs
cp src/build/pkgmt/my-ib.cnf /usr/local/infobright/conf/my-ib.cnf
/usr/local/infobright/bin/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/infobright/data --user=mysql修改my-ib.cnfbasedir = /usr/local/infobright
datadir = /usr/local/infobright/data
log-error = /usr/local/infobright/logs/bh.err启动ib实例cd /usr/local/infobright
bin/mysqld_safe --defaults-file=conf/my-ib.cnf --user=mysql > /dev/null 2>&1 &初始化ib实例的密码/usr/local/infobright/bin/mysqladmin -u root password "123456"因为使用的ICE社区版本,所以只能使用IB loader导入数据(其实就是只支持csv文件手工导入数据)。
注意:create table t () engine=brighthouse xxx;
创建表时,表的引擎要使用【brighthouse】,这样才会使用到ib仓库的特性(因为infobright-4.0.7带得有myisam、memory等mysql存储引擎,如果不指定,有可能使用到其他引擎)
示例如下,假设csv数据文件为data.csvbin/mysql -u root -p123456
load data infile "/root/data.csv" into table t_data fields terminated by ',' enclosed by '"' escaped by '\' lines terminated by '\n';数据导入成功后,就可以在ib中对数据进行sum、avg、group by等数据挖掘操作了。