试用mysql的infobright引擎
试用mysql的infobright引擎
换了新的单位我现在也从oracle从业者变成了mysql从业者,当然放弃oracle的原因主要是因为在新单位可以尽量少的写代码了。
现在我面对的是一个数据仓库,和上一家公司一样,数据仓库最让我们技术人员受不鸟的是数据量太大,存储,I/O,效率都让人想死,每次有些统计分析要求,在清单表里查询简直是让我等到花儿都谢了。那么会有什么好的办法呢?我想这个问题提出来会有很多人告诉我用hadoop。是的,hadoop是现在最流行的大数据解决方案,但是hadoop有一个问题,就是我们小组现在没有人会,还需要很长的时间去学习,去搭建,而且我也不愿意轻易放弃传统的关系型数据库,说真的我连Mango都很抵制。
我想起来以前在单位的时候有人推荐给我们用Greenplum,据我搜索到的资料显示,Greenplum速度很快,而且是基于PostgreSQL的,本来就是关系型数据库,学习起来没有什么压力,但是商业授权是要钱的,我们现在可没办法申请经费,于是作罢。
我自然而然的就想到了列式数据库SybaseIQ,当然也是要钱的,不过mySQL的Infobright引擎不要钱,起码社区版本不要钱。这就是插件式数据库的好处,总有一款引擎适合你。社区版的Infobright不支持DML,但是对于我测试来说没什么,以后上生产了也没什么,因为每天才导一次数据,loaddata完全能hold住。
下载地址在这里http://www.infobright.org/,看到org我就舒服,肯定不要钱。关于安装,这个东西下载好以后直接安装,不需要安装mySQL,因为它自带了一个。貌似自带的这个除了infobright之外只支持MyISAM和Memory引擎,但是这都不是问题,需要InnoDB可以另外下载一个mySQL用。linux版本的安装可能稍微复杂点,网上能搜索到的都是基于一个叫张宴的人写的复制的,我没测试也就没有发言权。我用的是windows版本的,一路下一步就可以了,安装好之后只需要改动它的配置文件my-ib.ini就可以了,里面写的很明白。
下面说说测试结果,我是在单位机器上测试的,根据单位的保密原则,我没办法把截图带回来。但是通过我三天的简单测试,在我的PC上(i5处理器,2G内存,WindowsXP SP2, 500G硬盘(7200rpm))。用loaddata导入2G的数据大概需要2分钟;一个1亿条数据的表,自己关联自己查询count(*),也不过就是2分钟。性能相当彪悍。如果把这个数据库测试拿到Pc服务器上去做,估计效果会让人眼前一亮。
如果需要看比较科学的测试,可以参考这个网站:http://www.actionsky.com/infobright/styles/performance/default.html。这个好像是infobright在国内的代理。
下面说点闲话。在上一家公司的时候,我做的最多的事情就是优化SQL,我之前也在oracle的框架下作了好多事情,但是随着数据量的暴增,就算再怎么优化,IO也是个瓶颈,索引也就没什么用了,我感到了无助。当时我想是不是真的关系型数据库要完蛋了,以后就是mongo这些noSQL的天下了?这几天测试之后我发现noSQL取代关系型数据库还是需要一段时间的。在weibo这种需要实时相应的系统里,可能noSQL会很吃香,但是在数据仓库领域,我想以列式数据库为代表的关系型数据会大放异彩,现在比较主流的大家可以去看看:SybaseIQ,这可能是最早的列式数据库了;南大通用的GBase,国货精品;Infobright,开源的,如果有能力,可以自己改了。顺便提一句,上面说到了Greenplum很快,但是Greenplum是在PostgreSQL之上构建的,pg是开源的,如果公司实力强大,甚至可以做一个不亚于gp性能的数据库,我希望以后能用上国产的。
试用mysql的infobright引擎的更多相关文章
- 【转】MySQL 数据库存储引擎
原文地址:http://blog.jobbole.com/94385/ 简单介绍 存储引擎就是指表的类型.数据库的存储引擎决定了表在计算机中的存储方式.存储引擎的概念是MySQl的特点,而且是一个插入 ...
- MySQL 数据库存储引擎
简单介绍 存储引擎就是指表的类型.数据库的存储引擎决定了表在计算机中的存储方式.存储引擎的概念是MySQl的特点,而且是一个插入式的存储引擎概念.这就决定了MySQl数据库中的表可以使用不同的存储方式 ...
- (转)Mysql数据库存储引擎
什么是MySql数据库 通常意义上,数据库也就是数据的集合,具体到计算机上数据库可以是存储器上一些文件的集合或者一些内存数据的集合. 我们通常说的MySql数据库,sql server数据库等 ...
- MySQL常用存储引擎及如何选择
一.MySQL的存储引擎 完整的引擎说明还是看官方文档:http://dev.mysql.com/doc/refman/5.6/en/storage-engines.html 这里介绍一些主要的引擎 ...
- MySQL之存储引擎(表类型)的选择
和大部分的数据库不同,MySQL中有一个存储引擎的概念,用户可以根据数据存储的需求来选择不同的存储引擎.本次博客就来介绍一下MySQL中的存储引擎.MySQL版本 5.7.19. 概述 MySQL的存 ...
- MySql 扩展存储引擎
MySql 扩展存储引擎 下面介绍几个列式存储引擎(都有两个版本:社区版.商业版): 一:TokuDB TokuDB 是一个高性能.支持事务处理的 MySQL 和 MariaDB 的存储引擎.Toku ...
- Mysql数据库存储引擎--转
原文地址:http://pangge.blog.51cto.com/6013757/1303893 简单介绍 存储引擎就是指表的类型.数据库的存储引擎决定了表在计算机中的存储方式.存储引擎的概念是My ...
- Mysql部分存储引擎介绍
Mysql存储引擎 什么是存储引擎 mysql中建立的库 --> 文件夹 库中建立的表 --> 文件 现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制: ...
- Mysql基础(二):MySQL之存储引擎
目录 MySQL之存储引擎 1.MySQL存储引擎介绍 2.MySQL结构 3.MySQL存储引擎分类 4.存储引擎的使用 5.总结 MySQL之存储引擎 1.MySQL存储引擎介绍 MySQL中的数 ...
随机推荐
- df 和du 命令统计磁盘空间不准确
Linux & Unix 中 df 和 du 命令统计磁盘空间数值不一致 经常会使用 df 和 du 分别查看磁盘空闲空间和占用空间,偶尔会发现 df(空闲空间) 会小于磁盘大小减去 du(占 ...
- poj3641:伪素数检测
知道miller robin 素数测试中的伪素数定义就可以很容易解决,详见总结帖 #include <iostream> #include<stdio.h> #include& ...
- javaweb 登录注册
1:用户登录界面 login.jsp <%@ page language="java" import="java.util.*" pageEncoding ...
- (转)iOS7界面设计规范(2) - UI基础 - iOS应用解析
今天再来一发,然后结束掉周六的忙碌,去吃零食,还有冰啤酒:其实现在打嗝还有小龙虾味儿呢. 第二篇更多的是从技术的角度对iOS界面组成原理进行了简单的解析,篇幅很短,可稍作了解:更多关于iOS开发入门的 ...
- [原创作品]html css改变浏览器选择文字的背景和颜色
又很久没有'剥壳'了,最近在为一家公司做一个生产管理解决方案.所以都很忙.今天的话题很简单,就做一个很简单的网页特效.今天偶然浏览到一个网站,他们在选择文字时,样子不是蓝背景和白色字体那么单调,感觉这 ...
- Node.js 之 express 入门 ejs include公共部分
1. 直接进入express安装 因为之前有一篇文章我已经讲过怎么安装node了 而网上的教程也是非常多.所有直接进入到express.教程简陋 由于我比较笨 所有只要写到我自己明白就行. 这里有个教 ...
- 注意:"AspNetPager”的控件“AspNetPager1”必须放在具有 runat=server 的窗体标记内
应加: <form id="form1" runat="server"> </form> 否则一开始什么也不显示,页面控件看不见,加上a ...
- 《第一行代码》学习笔记12-UI(1)
1.程序需要注销或者退出,用一个专门的集合类对所有的活动进行管理即可. 2.可视化编辑工具不利于真正了解界面背后的实现原理,通常这种方式制作的界面都不具有很好的屏幕适配性, 而且当需要编写较为复杂的界 ...
- select radio readonly
首先 select radio 设置 disable的会无法提交数据. 这让我很头疼 而且 readonly 无效 后来发现.我把自己绕进去了..一般涉及 只读都是 不让用户修改 .而后台只更新 可 ...
- ComboBox绑定数据源时触发SelectedIndexChanged事件的处理办法
转载:http://blog.sina.com.cn/s/blog_629e606f01014d4b.html ComboBox最经常使用的事件就是SelectedIndexChanged.但在将Co ...