分类目录

链接

2013年七月
« 6月   8月 »
1234567
891011121314
15161718192021
22232425262728
293031  

近期文章

热门标签

博主推荐

现在位置:    首页 > MySQL > 正文
百万级数据库优化
MySQL 暂无评论 阅读(1,023)

近来这几天正在忙这个优化的计划,一向没时刻耍,繁忙了一段时刻总算仍是拿下了这个项目?项目中不要每次都把程序上的疑问,让mysql数据库来承当,它仅仅个mysql罢了。

疑问1:对于MySQL Community5.5+版别优化事务履行速度,进步全体体系功率

测验效劳器硬件环境:Intel Core i5,8gb内存,7200rpm硬盘,Win7专业版

Table称号

读取频率

写入频率

最低接连读取速度

最低接连写入速度

预估数据量

C….

频频

不频频

30行/150ms

100行/s

百万行

D…

频频

不频频

30行/150ms

100行/s

百万行

De…..

频频

不频频

30行/150ms

10行/s

万行

St……

频频

不频频

30行/150ms

100行/s

百万行

S……

频频

频频

30行/150ms

100行/s

百万行

Pr…

很频频

不频频

1000行/s-5000行/s

100行/s

百万行/表

De…….

很频频

频频

1000行/s-5000行/s

1000行/s

百万行/表

De……

很频频

频频

1000行/s-5000行/s

1000行/s

百万行/表

 

 

 

 

 

 

 

 

 

 

 

 

 

 

看到这个想到的是拆分表,不外乎即是表的纵向拆分和横向拆分,我在项目中也遇到过相似的疑问,其时也是运用mysql数据库其时大约列数有800 多,mysql数据一张表的字段是不能有800多个,最开端测验的是用String 依照JSON的格局存入的数据库,成果发现处置时加入了循环,反而使体系功能变得很慢导出一个Excel也是很费劲的,最终选用分表大约分了9张,处理了 疑问,其实如今想想是不是运用方针的序列化,将序列化的方针存入数据库呢,运用在从数据库中取出来反序列化运用,其时分表后满意了需求就没再测验方针的序 列化的办法了。可是这次给的需求不需求纵向拆表,是不是需求横向拆表呢?测验一次先,每次的点子都是要测验的e。

有些时分在mysql中仍是要善用limit,

除开主键其他没加索引,这样上了百万条的数据查询应该是不存在疑问,话不多说优化SQL吧。

可是刺进仍是存在疑问,是不是需求分表呢?若是仅仅上百万仍是能够不必分表的,若是分表就要处置好分页查询,删去和添加的操作,我仍是喜爱运用 Mysql数据的同步,运用两个mysql数据库,效劳器ip分别为ip1和ip2,咱们将ip1作为Master数据库,把ip2作为slave效劳 器,咱们能够选用单项同步的方法,即是Master的数据是主数据,然后slave自动去Master哪儿同步数据回来,太晚了,明日测验经过就能够开端 优化项目了。

在数据库中数据在100w多行时刺进数据耗时2.822秒的时刻,

疑问2:大文件上载竟然有这样的需求,

档案巨细

Action

最大履行内存占用

内网最低传输速率(802.11g)

50mb

Upload

5mb

1mb/s

500mb

Upload

5mb

1mb/s

5gb

Upload

5mb

1mb/s

10gb

Upload

5mb

1mb/s

50mb

Download

5mb

1mb/s

500mb

Download

5mb

1mb/s

5gb

Download

5mb

1mb/s

10gb

Download

5mb

1mb/s

 

 

 

 

 

 

 

 

 

 

 

 

 

曾经遇到过一个视频网站上载需求也是最大4G左右,这次竟然要上载最大的有10G,

为进步大文件传输速率,将方针文件分红N块文件,对应发动N个线程经过TCP/IP协议来传 输,传输文件前先查看是不是存在该文件的临时文件群,若是存在找出其断点方位进行续传,最终兼并文 件。异步切割发送,用当前最干流的FLASH+AJAX技能。ActionScript和HTML5是撑持SOCKET通讯的,呵呵。

完结流程:

1 客户端向效劳端发送传递文件发动信号(发送文件姓名)

2 效劳器查看是不是包括有该文件所对应的临时文件(eg, 传输file.txt,就查看是不是存在temp[i]file.txt,(i为 第N块临时文件)),若是存在就发送一切临时文件的断点方位给客户端

3 客户端更具文件巨细将文件分为N块(每块默许巨细为500M,可经过参数进行装备)以加速传输速率, 然后依据效劳器回来的断点方位(若是有)对每块文件进行移位,移动到断点方位进行续传,若是效劳器 上没有临时文件夹,就进行一般的传送文件

4当一切线程作业完结,兼并一切临时文件夹。

大文件上载的疑问现已完结运用的是serverlight完结的。测验经过了大约是5-6M每秒。

本文版权归数据库之家所有,转载引用请完整注明以下信息:
本文作者:Bruce
本文地址:百万级数据库优化 | 数据库之家