MySql多字段大表的优化方法
主从同步+读写分离:
这个表在有设备条件的情况下,读写分离,这样能减少很多压力,而且数据稳定性也能提高
纵向分表:
根据原则,每个表最多不要超过5个索引,纵向拆分字段,将部分字段拆到一个新表
通常我们按以下原则进行垂直拆分:(先区分这个表中的冷热数据字段)
把不常用的字段单独放在一张表;
把text,blob等大字段拆分出来放在附表中; (一定要将大字段放到附表中否则会影响主表的查询效率)
经常组合查询的列放在一张表中;
缺点是:很多逻辑需要重写,带来很大的工作量。
利用表分区:
这个是推荐的一个解决方案,不会带来重写逻辑等,可以根据时间来进行表分区,相当于在同一个磁盘上,表的数据存在不同的文件夹内,能够极大的提高查询速度。
横向分表:
1000W条数据不少的,会带来一些运维压力,备份的时候,单表备份所需时间会很长,所以可以根据服务器硬件条件进行水平分表,每个表有多少数据为准。
数学建模最优化方法?
1、多目标优化问题。 对于教师和学生的满意可以用几个关键性的指标,如衡量老师的工作效率和工作强度及往返强度等,如定义 效率w=教师的实际上课时间/(教师坐班车时间+上课时间+在学校逗留时间)。 然后教师的满意度S1为几个关键性指标的加权平均。注意一些无量纲量和有量纲量的加权平均的归一化问题。 对于学生可以定义每门课周频次,每天上课频次等等 对于学校满意,可以定义班车出动次数,这个指标和教师的某一个指标是联动的,教室和多媒体使用周期频次和使用时长等等。
2、根据第一问的模型按照数据进行求解
3、教师、学生和学校的满意度作为指标
4、根据结果提出合理化建议