<
>

开源MySQL高效数据仓库解决方案:Infobright详细介绍

2019-01-05 09:58:50 来源:易采站长站 作者:刘景俊

与MySQL对比

    infobright适用于数据仓库场合:即非事务、非实时、非多并发;分析为主;存放既定的事实,例如日志,或汇总的大量的数据。所以它并不适合于应对来自网站用户的请求。实际上它取一条记录比mysql要慢很多,但它取100W条记录会比mysql快。 mysql的总数据文件占用空间通常会比实际数据多,因为它还有索引。infobright的压缩能力很强大,按列按不同类型的数据来压缩。 服务形式与接口跟mysql一致,可以用类似mysql的方式启用infobright服务,然后原来连接mysql的应用程序都可以以类似的方式连接与查询infobright。这对熟练mysql者来说是个福音,学习成本基本为0。

    infobright有两个发布版:开源的ICE及闭源商用的IEE。ICE提供了足够用的功能,但不能 INSERT,DELETE,UPDATE,只能LOAD DATA INFILE。IEE除提供更充分的功能外,据说查询速度也要更快。

    社区ICE版,国内各大企业均有测试,投入生成系统的较少,主要有以下原因:

      对DML、alter语句限制 需定时增量load导出导入 自带的MyISAM难以支持高并发,若想充分利用服务器资源,需开启另外的MySQL实例 对中文等多字节文字支持不好 仅支持单核调度 缺少原厂的支持

      ICE与IEE版本区别

      IEE包含针对大多数企业工作需求的附加特性,如:更好的查询性能、DML语句支持、分布式导入等。另外,IEE版本还包含了一定级别的Infobright原厂或代理商的支持救援服务、产品培训等。

        明显的查询性能差异。虽然IEE和ICE版本均具有明显超出例如Oracle、SQL Server、MySQL等行式数据库的查询性能,但IEE还要比ICE版本快50-500%。这个明显差距来自于IEE核心引擎中特有的——多线程调度模块(自IEE3.5引入).而在ICE中,一个独立的查询只能使用单个CPU核心,其他的查询进程只能使用其他核心。对于需要筛选和区分大量数据的复杂查询,使用IEE多线程调度模块可以显著地节约查询时间。 支持DML语句。IEE支持标准的SQL 数据操作语言,使用insert、update、delete操控数据。而ICE只支持Load data infile进行数据导入,任何数据的变化都需要重新导入全部数据。DML语句的使用会降低数据查询性能,随次数递增。 支持DDL语句。包括alter table rename,add column,drop column(但是列操作只能对最后列生效) 支持Hadoop接口(通过DLP) 高级复制和高可用。IEE版本包含主从功能,基于SQL statement 更简易的导入和更快的导入速度。IEE支持分布式导入工具-DLP;且包含标准的MySQL原生loader,用于处理一些复杂数据的导入,另一方面也说明IBloader的容错性较差 Load或DML同时的一致性查询 支持临时表 其他商业授权,售后支持等

        架构

        基于MySQL的内部架构 – Infobright采取与MySQL相似的内部架构,下面是Infobright的架构图:

暂时禁止评论

微信扫一扫

易采站长站微信账号