hadoop hbase hive 关系 记录一次MySQL两千万数据的大表优化解决过程,提供三种解决

电脑杂谈  发布时间:2019-03-05 00:07:08  来源:网络整理

使用阿里云rds for MySQL(就是MySQL5.6版本),有个用户上网记录表6个月的数据量近2000万,保留最近一年的数据量达到4000万,查询速度极慢,日常卡死。严重影响业务。

问题前提:老系统,当时设计系统的人大概是大学没毕业,表设计和sql语句写的不仅仅是垃圾,简直无法直视。原开发人员都已离职,到我来维护,这就是传说中的维护不了就跑路,然后我就是掉坑的那个!!!

我尝试解决该问题,so,有个这个日志。

方案概述

缺点:侵入式方法,需修改现有代码,而且对于第三方库、stl容器、脚本泄漏等因无法修改代码而无法定位。

3.下一步就要修改原程序了,我那个是那个随便搜一搜c#des解密代码,在对源程序进行修改,修改代码如下:。

根据策划的需求,我将游戏数据分析完了之后,就基本理清了表结构,在项目中我使用了hibernate4作为orm框架,相对于前面的版本,hibernate4有一个很爽的功能,就是在javabean中添加一些注解,就能在构建hibernate的session的时候,自动在创建表,这样使得开发效率快了好几倍,hibernate本身就已经够爽了,我认为至今没有什么orm框架能跟它比,以前也用过mybatis,个人感觉mybatis更适合那种需要手动写很复杂的sql才用的,每一个查询都要写sql,在hibernate中,简简单单几行代码,就能完成一个查询,一下贴出hibernate工具类:。

唯一,缺点长度较大,支持有限,优点同uuid,跨,但是仍然需要访问。

方案二:升级类型,换一种100%兼容mysql的。优点:不影响现有业务,源程序不需要修改代码,你几乎不需要做任何操作就能提升性能,缺点:多花钱

方案三:一步到位,大数据解决方案,更换newsql/nosql。优点:扩展性强,成本低,没有数据容量瓶颈,缺点:需要修改源程序代码

以上三种方案,按顺序使用即可,数据量在亿级别一下的没必要换nosql,开发成本太高。hadoop hbase hive 关系三种方案我都试了一遍,而且都形成了落地解决方案。该过程心中慰问跑路的那几个开发者一万遍 :)

方案一详细说明:优化现有mysql

跟阿里云大佬电话沟通 and Google解决方案 and 问群里大佬,总结如下(都是精华):

1.设计和表创建时就要考虑性能

2.sql的编写需要注意优化

3.分区

4.分表

5.分库

1.设计和表创建时就要考虑性能

开发能力(mysql、pl/sql),熟悉oracle的开发使用,精通pl/sql等开发工具的使用,能够优化、sql等性能问题。

其产品不仅安全上、性能上都优于英语编程,开发同样一个产品,其费用和开发周期都不足英语编程同类产品的三分之一。

ram表示机器的对于数据运算的吞吐能力、cpu整数/浮点性能代表处理器的运算能力、2d/3d绘图性能表示图形处理芯片对图像的渲染能力、i/o性能表示处理器与ram对的访问效率、sd卡写入/读取速度则表明机身rom的可读写能力(目前该项测试需要rom空闲空间大于300mb,因此若机身存储空间/rom不足300mb,则忽略该项成绩,但总成绩要扣除相对应分数)。

ram表示机器的对于数据运算的吞吐能力、cpu整数/浮点性能代表处理器的运算能力、2d/3d绘图性能表示图形处理芯片对图像的渲染能力、i/o性能表示处理器与ram对的访问效率、sd卡写入/读取速度则表明机身rom的可读写能力(目前该项测试需要rom空闲空间大于300mb,因此若机身存储空间/rom不足300mb,则忽略该项成绩,但总成绩要扣除相对应分数)。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-92645-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 姬朔
      姬朔

      我知道我知道我昨天就把高清图都存下来了

    • 赵小镜
      赵小镜

      都是这样的状态

    • 张嘉琪
      张嘉琪

      壮哉我大函数新专辑大发

    热点图片
    拼命载入中...