mysql可以做数据仓库吗

mysql可以做数据仓库吗,第1张

数据仓库就是数据库,只不过是按照业界不同的提法说法不同而已; 一般的数据仓库的说法是要建立一个高性能的可查询数据库,一般说来是提供高效的查询而不是交互。

从软件出发考虑:

MySQL现有的几种数据库从5.5后缺省的数据引擎是Innodb, 性能在查询上和MyISAM差不多,不过对事物的支持更加好。 如果需要建立一个有规模的数据仓库首先必须考虑查询和聚合运算的效率问题, 从MySQL内部的函数的使用效率出发选用innodb可以支持复杂的存储过程让运算集中在服务器上运行,可以高效的发挥服务器的运算性能和SQL集合运算的效率。

Infobright是一款基于独特的专利知识网格技术的列式数据库。Infobright是开源的MySQL数据仓库解决方案,引入了列存储方案,高强度的数据压缩,优化的统计计算(类似sum/avg/group by之类),infobright 是基于mysql的,但不装mysql亦可,因为它本身就自带了一个。mysql可以粗分为逻辑层和物理存储引擎,infobright主要实现的就是一个存储引擎,但因为它自身存储逻辑跟关系型数据库根本不同,所以,它不能像InnoDB那样直接作为插件挂接到mysql,它的逻辑层是mysql的逻辑层加上它自身的优化器。

Infobright特征

优点:

大数据量查询性能强劲、稳定:百万、千万、亿级记录数条件下,同等的SELECT查询语句,速度比MyISAM、InnoDB等普通的MySQL存储引擎快5~60倍。高效查询主要依赖特殊设计的存储结构对查询的优化,但这里优化的效果还取决于数据库结构和查询语句的设计。

存储数据量大:TB级数据大小,几十亿条记录。数据量存储主要依赖自己提供的高速数据加载工具(百G/小时)和高数据压缩比(>10:1)

高数据压缩比:号称平均能够达到 10:1 以上的数据压缩率。甚至可以达到40:1,极大地节省了数据存储空间。高数据压缩比主要依赖列式存储和 patent-pending 的灵活压缩算法.

基于列存储:无需建索引,无需分区。即使数据量十分巨大,查询速度也很快。用于数据仓库,处理海量数据没一套可不行。不需要建索引,就避免了维护索引及索引随着数据膨胀的问题。把每列数据分块压缩存放,每块有知识网格节点记录块内的统计信息,代替索引,加速搜 索。

快速响应复杂的聚合类查询:适合复杂的分析性SQL查询,如SUM, COUNT, AVG, GROUP BY

传输完成后将Yum库导入到你的本地:

>sudo yum localinstall mysql-community-release-el6-*.noarch.rpm

这个Yum库包含了MySQLServer,MySQL工作台管理工具以及ODBC驱动,现在可以通过下面的命令简单地安装MySQLServer:

>sudo yum install mysql-community-server

至此我就可以使用Yum简单地管理MySQL更新,并能确保总是从官网软件库得到最新的发布版。

(二),到这一步,作为新手,我们经常不知道mysql默认的密码,无法正常使用mysql,于是我们得先修改mysql的密码,

(1)设置mysql的无密码登录

>[root@localhost ~] # vim /etc/my.cnf

添加一行 "skip-grant-tables",保存退出。

(2)开启mysql服务

>[root@localhost ~] mysql -u root -p

直接按回车键进入mysql指令 *** 作界面

(3)在修改mysql密码的时候,要使用如下语句才会成功

>use mysql

>update mysql.user set authentication_string=password('123qwe') where user='root' and Host ='localhost'

>flush privileges

>quit

经常报错的一个例子是上述的authentication_string列改为password列,新版本的mysql,密码列的名字为authentication_string。

(4)然后运行 [root@localhost ~]# vim /etc/my.cnf

去掉"skip-grant-tables"后,保存该文件。

(5)运行[root@localhost ~]# service mysqld restart

重启mysql。

(6)这时候再运行mysql的语句,可能会出现错误提示:You must reset your password using ALTER USER statement before executing this statement.

解决方案:

>SET PASSWORD = PASSWORD('9OP0(op)')

>ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER

>flush privileges

完成以上三步,使用新设置的密码即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7372596.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存