Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1717|回复: 3
打印 上一主题 下一主题

infobright

[复制链接]

1272

主题

2067

帖子

7958

积分

认证用户组

Rank: 5Rank: 5

积分
7958
跳转到指定楼层
楼主
发表于 2019-12-31 13:16:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
他就是mysql的一个数据引擎,和平时的innodb和myisam等都属于数据引擎
分布式列式数据库
天津电信网优平台话单存储数据库选型.docx (21.99 KB, 下载次数: 0)


其他选型对比
其他选型介绍
1、 greenplum db
优势: 支持PB级数据量,单个节点数据规模无限制。
支持1000个以上的节点规模。
不足:并发性不好,随并发用户的增多,效率呈线性下降。
                  对于imsi等数据离散度特别高的键值的查询,还需建立索引。
                  数据库的性能受限于集群中性能最差的服务器。
2、 hadoop
非关系型数据存储系统,在互联网上应用广泛,一般是组成大规模的服务器集群。入库速度快,要求服务器数目较多。
对比:
[size=12.0000pt] 
名称
成熟度
硬件成本
软件成本
入库速度
查询速度
可并发度
后续扩展性
方案一
Greenplum
方案二
ORACLE
方案二
hadoop
方案三
infobright


回复

使用道具 举报

1272

主题

2067

帖子

7958

积分

认证用户组

Rank: 5Rank: 5

积分
7958
沙发
 楼主| 发表于 2019-12-31 21:48:47 | 只看该作者
Infobright是开源的MySQL数据仓库解决方案,
引入了列存储方案,高强度的数据压缩,优化的统计计算(类似sum/avg/group by之类)

infobright 是基于mysql的,但不装mysql亦可,因为它本身就自带了一个。
mysql可以粗分为逻辑层和物理存储引擎,infobright主要实现的就是一个存储引擎,
但因为它自身存储逻辑跟关系型数据库根本不同,所以,它不能像InnoDB那样直接作为插件挂接到mysql,
它的逻辑层是mysql的逻辑层加上它自身的优化器。
回复 支持 反对

使用道具 举报

1272

主题

2067

帖子

7958

积分

认证用户组

Rank: 5Rank: 5

积分
7958
板凳
 楼主| 发表于 2019-12-31 21:49:24 | 只看该作者
灰色部分是mysql原有的模块,白色与蓝色部分则是 infobright自身的。   
系统结构分析:
  跟mysql一样的两层结构,上面的逻辑层处理查询逻辑,下面的是存储引擎。
逻辑层右端的loader与unloader是infobright的数据导入导出模块,也即处理SQL语句里LOAD DATA INFILE … 与SELECT … INTO FILE任务,
由于infobright面向的是海量数据环境,所以这个数据导入导出模块是一个独立的服务,并非直接使用mysql的模块。
逻辑层的infobright优化器包在mysql查询优化器的外面,如下面将会提到的,因为它的存储层有一些特殊结构,所以查询优化方式也跟 mysql有很大差异。
存储层最底层是一个个的Data Pack(数据块)。每一个Pack装着某一列的64K个元素,所有数据按照这样的形式打包存储,
每一个数据块进行类型相关的压缩(即根据不同数据类型采 用不同的压缩算法),压缩比很高。它上层的压缩器与解压缩器就做了这个事情。
压缩层再向上就是infobright最重要的概念:Knowledge Grid(知识网格),这也是infobright放弃索引却能应用于大量数据查询的基础。
它包含两类结点:每个Data Pack Node(知识节点)对应于一个Data Pack,存储该Data Pack的一些统计信息,如min, max, avg, null的个数,甚至不同值的量等等;
Knowledge Node则存储了一些更高级的统计信息,以及与其它表的连接信息,这里面的信息有些是数据载入时已经算好的,有些是随着查询进行而计算的,
所以说是具备一 定的“智能”的。



回复 支持 反对

使用道具 举报

1272

主题

2067

帖子

7958

积分

认证用户组

Rank: 5Rank: 5

积分
7958
地板
 楼主| 发表于 2019-12-31 21:50:12 | 只看该作者
事务型数据库的首选引擎,支持ACID事务,支持行级锁定。InnoDB是为处理巨大数据量时的最大性能设计。
在技术上,InnoDB 是一套放在 MySQL 后台的完整数据库系统,InnoDB 在主内存中建立其专用的缓冲池用于高速缓冲数据和索引。
在 MySQL 的源代码中,从 3.23.34a 开始包含 InnoDB 表引擎,并在 MySQL -Max 的二进制版本中激活。

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。
2008年1月16号MySQL AB被Sun公司收购。而2009年,SUN又被Oracle?收购。就这样如同一个轮回,MySQL成为了Oracle公司的另一个数据库项目。
MySQL是一个开放源码的小型关联式数据库管理系统,
关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

系统特性:
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
2.支持多种存储引擎。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-11-22 17:39 , Processed in 0.066112 second(s), 22 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表