mysql大数据处理过程的注意事项

本文分享了在处理大量数据时提高MySQL性能的经验,包括为临时表添加主键的重要性及避免使用视图,特别是在涉及复杂查询和大数据场景时。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在做10w以上的Excel和txt的导出,业务逻辑本身的复杂性和表结构的不合理性就不提了,这里就说下在使用mysql中希望明显提高性能的要点:


1.如果你使用了存储过程或其他方式创建了临时表(temporary table)来充当中间表,记得一定要为临时表加主键(单独主键或是联合主键),

       特别是通过creat temporary table xx as select ....方式,此凡是是不带主键的,你可以通过creat temporary table xx(id int primary key , name1 varchar(2)....) as select ....的方式指定主键,但如果是联合主键,我不知道如何指定,

        所有我推荐后一种:在创建完成后,使用alter table xx add primary key(id1,id2),这样我也不必再创建临时表时指定字段和字段类型了,这里我必须承认主键很重要,在大数据查询和关联时性能可以显著提高


2 不建议使用过多视图或者说最好不用视图,大数据查询一旦复杂点性能显著下降,我目前没找到方法给视图加主键,网上说创建的视图是伴随着查询的主键继承来的(无证可寻),我测试如果查询的集合是后期变化生成的联合主键,就必然无法继承了,所以没有主键或说没法指定主键的视图在大数据时性能会下降(我是通过建视图和建带主键的临时表测试大数据查询的得到的结论,性能差距很大)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值