精华内容
下载资源
问答
  • 提供kettle插入速度有人提出修改一些数据库配置参数, 或者开启多线程, 多任务. 但是这不算最主要的. 因为大部分时候,数据插入需要对比. 如图: 插入或者更新的操作中, 如果id相同, 就比较内容进行更新. 如果id不同,就...

    提供kettle插入速度有人提出修改一些数据库配置参数, 或者开启多线程, 多任务. 但是这不算最主要的. 因为大部分时候,数据插入需要对比. 如图: 插入或者更新的操作中, 如果id相同, 就比较内容进行更新. 如果id不同,就进行插入. 意味着,插入的前提是先查找id,进行id值对比. 所以, 提高插入速度, 给id建立索引就可以了.
    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • Linux 连接sftp 影响下载速度因素

    千次阅读 2019-08-16 17:25:45
      最近公司的一个项目需要使用sftp来下载文件到Linux服务器,然后再通过AES解密,RSA验签,解压等操作读取数据然后插入到数据库中。   公司的sftp部署到了公网上,刚开始传输小文件的时候。sftp都是正常,没有...

      最近公司的一个项目需要使用sftp来下载文件到Linux服务器,然后再通过AES解密,RSA验签,解压等操作读取数据然后插入到数据库中。
      公司的sftp部署到了公网上,刚开始传输小文件的时候。sftp都是正常,没有发现什么异常情况。但是当文件达到600M时候,sftp就卡着不动了。我自己电脑上跑项目下载速度还是可以的,大约10min就可以了。但是Linux中卡死了,下载不完。
      首先分析确认到底是sftp服务器限速还是,服务器速度慢。我自己通过sftp root@XXX.XXX.XXX.XXX 连接到sftp服务器,根据提示输入密码。就可以通过命令进行测速。cd /abc/bc 进入到指定目录,然后get a.txt /ad后面的/ab目录是本地服务器的目录。就可以看到get下载的速度,我本地电脑是800kb/s,Linux下载速度是54kb/s。因此,可以断定是Linux服务器和sftp传输速度太慢了。
      检查一下sftp服务器和Linux传输的IP地址,如果两台服务器可以用内网的话就不要用公网,我一开始的时候不知道sftp服务器和Linux服务器在一个局域网中,导致我一直以为是Linux服务器参数配置的问题。后来将sftp地址改为内网IP以后,传输速度达到了32M/s,这速度真给力。

    展开全文
  • 自建Mysql.5.7.17插入速度优化

    千次阅读 2020-04-10 09:43:17
    自建Mysql插入速度优化 innodb_flush_log_at_trx_commit和sync_binlog 两个参数是控制MySQL 磁盘写入策略以及数据安全性的关键参数。本文从参数含义,性能,安全角度阐述两个参数为不同的值时对db 性能,数据的影响. ...

    前言

    最近开发同事表示这dev环境的mysql插入怎么这么慢(表字段大概有242个),作为运维,那肯定是不能忍的。于是写了个重复插入,开始测试mysql参数。直到看到了这篇文章。于是乎,借轮子用用。于是对此进行排版。
    
    #于是我自己写了个insert脚本,插入自定义数量的记录,进行测试。
    
    #!/bin/bash
    sum=0
    switch=true
    user=test
    pwd=test
    start=$(date +%s )
    
    Get_date() {
    datetime=$(date +%s )
    end=$datetime
    }
    
    Insert() {
            sql=`mysql -u$user-$pwd  << EOF
            source /data/test/insert.sql;
            exit
            EOF`
            echo $sql
    }
    
    while $switch ;do
    sum=$((sum+1))
    Insert
    [ $sum = 1000 ] &&  $swtich=false
    done
    Get_date
    echo "Insert counts $sum times,expend $(($end-$start)) sec"
    
    #Mysql默认innodb_flush_log_at_trx_commit=1
    #原本插入1000条记录,花费138秒
    
    #Counts 1000 times,expend 138 sec
    #my.cnf中增加下面参数后重启mysql
    innodb_flush_log_at_trx_commit=2
    
    #现在插入1000条记录,花费了9秒钟
    #Counts 1000 times,expend 9 sec
    #得出结论,插入速度得到大幅度提升。
    

    下面内容是对innodb_flush_log_at_trx_commit的参数的详解。

    参数意义

    innodb_flush_log_at_trx_commit和sync_binlog 两个参数是控制MySQL 磁盘写入策略以及数据安全性的关键参数。本文从参数含义,性能,安全角度阐述两个参数为不同的值时对db 性能,数据的影响.

    innodb_flush_log_at_trx_commit

    如果innodb_flush_log_at_trx_commit设置为0,log buffer将每秒一次地写入log file中,并且log file的flush(刷到磁盘)操作同时进行.该模式下,在事务提交的时候,不会主动触发写入磁盘的操作。
    如果innodb_flush_log_at_trx_commit设置为1,每次事务提交时MySQL都会把log buffer的数据写入log file,并且flush(刷到磁盘)中去.
    如果innodb_flush_log_at_trx_commit设置为2,每次事务提交时MySQL都会把log buffer的数据写入log file.但是flush(刷到磁盘)操作并不会同时进行。该模式下,MySQL会每秒执行一次 flush(刷到磁盘)操作。
    注意:
    	由于进程调度策略问题,这个“每秒执行一次 flush(刷到磁盘)操作”并不是保证100%的“每秒”。
    

    sync_binlog

    sync_binlog 的默认值是0,像操作系统刷其他文件的机制一样,MySQL不会同步到磁盘中去而是依赖操作系统来刷新binary log。
    当sync_binlog =N (N>0) ,MySQL 在每写 N次 二进制日志binary log时,会使用fdatasync()函数将它的写二进制日志binary log同步到磁盘中去。
    注意:
    	如果启用了autocommit,那么每一个语句statement就会有一次写操作;否则每个事务对应一个写操作。
    

    根据上述描述,原博做了一张图,可以方便大家查看。
    在这里插入图片描述

    性能

    两个参数在不同值时对db的纯写入的影响表现如下:
    

    在这里插入图片描述

    测试场景1

    innodb_flush_log_at_trx_commit=2 
    sync_binlog=1000
    

    测试场景2

    innodb_flush_log_at_trx_commit=1 
    sync_binlog=1000
    

    测试场景3

    innodb_flush_log_at_trx_commit=1 
    sync_binlog=1
    

    测试场景4

    innodb_flush_log_at_trx_commit=1
    sync_binlog=1000
    

    测试场景5

    innodb_flush_log_at_trx_commit=2 
    sync_binlog=1000 
    
    场景TPS
    场景141000
    场景233000
    场景326000
    场景433000
    由此可见,当两个参数设置为双1的时候,写入性能最差,sync_binlog=N (N>1 ) 	
    innodb_flush_log_at_trx_commit=2 时,(在当前模式下)MySQL的写操作才能达到最高性能。
    

    安全

    当innodb_flush_log_at_trx_commit和sync_binlog  都为 1 时是最安全的,在mysqld 服务崩溃或者服务器主机crash的情况下,binary log 只有可能丢失最多一个语句或者一个事务。但是鱼与熊掌不可兼得,双11 会导致频繁的io操作,因此该模式也是最慢的一种方式。
    当innodb_flush_log_at_trx_commit设置为0,mysqld进程的崩溃会导致上一秒钟所有事务数据的丢失。
    当innodb_flush_log_at_trx_commit设置为2,只有在操作系统崩溃或者系统掉电的情况下,上一秒钟所有事务数据才可能丢失。
    
    双1适合数据安全性要求非常高,而且磁盘IO写能力足够支持业务,比如订单,交易,充值,支付消费系统。双1模式下,当磁盘IO无法满足业务需求时 比如11.11 活动的压力。推荐的做法是 innodb_flush_log_at_trx_commit=2 ,sync_binlog=N (N为500 或1000) 且使用带蓄电池后备电源的缓存cache,防止系统断电异常。
    

    小结

    系统性能和数据安全是业务系统高可用稳定的必要因素。我们对系统的优化需要寻找一个平衡点,合适的才是最好的,根据不同的业务场景需求,可以将两个参数做组合调整,以便是db系统的性能达到最优化。
    

    原博的参考文章

    http://dev.mysql.com/doc/refman/5.1/en/innodb-parameters.html#sysvar_innodb_flush_log_at_trx_commit
    http://dev.mysql.com/doc/refman/5.1/en/replication-options-binary-log.html#sysvar_sync_binlog
    
    展开全文
  • 因为框架对速度的极大影响,所以这里进行大数据插入的时候,将使用原生代码进行,尽量避免其他因素对数据插入影响。代码:百万数据结果:生产第1批20000条数据耗时:0.001秒 InnoDB第1批插入20000条数据耗时0.183...

    因为框架对速度的极大影响,所以这里进行大数据插入的时候,将使用原生代码进行,尽量避免其他因素对数据插入的影响。

    代码:


    百万数据结果:

    生产第1批20000条数据耗时:0.001秒
    InnoDB第1批插入20000条数据耗时0.183秒
    生产第2批20000条数据耗时:0.001秒
    InnoDB第2批插入20000条数据耗时0.122秒
    生产第3批20000条数据耗时:0.001秒
    InnoDB第3批插入20000条数据耗时0.261秒
    生产第4批20000条数据耗时:0.001秒
    InnoDB第4批插入20000条数据耗时0.129秒
    生产第5批20000条数据耗时:0.001秒
    InnoDB第5批插入20000条数据耗时0.173秒
    生产第6批20000条数据耗时:0.001秒
    InnoDB第6批插入20000条数据耗时0.13秒
    生产第7批20000条数据耗时:0.001秒
    InnoDB第7批插入20000条数据耗时0.17秒
    生产第8批20000条数据耗时:0.001秒
    InnoDB第8批插入20000条数据耗时0.133秒
    生产第9批20000条数据耗时:0.001秒
    InnoDB第9批插入20000条数据耗时0.302秒
    生产第10批20000条数据耗时:0.001秒
    InnoDB第10批插入20000条数据耗时0.181秒
    生产第11批20000条数据耗时:0.001秒
    InnoDB第11批插入20000条数据耗时0.133秒
    生产第12批20000条数据耗时:0.001秒
    InnoDB第12批插入20000条数据耗时0.124秒
    生产第13批20000条数据耗时:0.001秒
    InnoDB第13批插入20000条数据耗时0.122秒
    生产第14批20000条数据耗时:0.001秒
    InnoDB第14批插入20000条数据耗时0.325秒
    生产第15批20000条数据耗时:0.001秒
    InnoDB第15批插入20000条数据耗时0.211秒
    生产第16批20000条数据耗时:0.001秒
    InnoDB第16批插入20000条数据耗时0.131秒
    生产第17批20000条数据耗时:0.001秒
    InnoDB第17批插入20000条数据耗时0.164秒
    生产第18批20000条数据耗时:0.001秒
    InnoDB第18批插入20000条数据耗时0.199秒
    生产第19批20000条数据耗时:0.001秒
    InnoDB第19批插入20000条数据耗时0.148秒
    生产第20批20000条数据耗时:0.001秒
    InnoDB第20批插入20000条数据耗时0.239秒
    生产第21批20000条数据耗时:0.001秒
    InnoDB第21批插入20000条数据耗时0.144秒
    生产第22批20000条数据耗时:0.001秒
    InnoDB第22批插入20000条数据耗时0.174秒
    生产第23批20000条数据耗时:0.001秒
    InnoDB第23批插入20000条数据耗时0.117秒
    生产第24批20000条数据耗时:0.001秒
    InnoDB第24批插入20000条数据耗时0.133秒
    生产第25批20000条数据耗时:0.001秒
    InnoDB第25批插入20000条数据耗时0.122秒
    生产第26批20000条数据耗时:0.001秒
    InnoDB第26批插入20000条数据耗时0.45秒
    生产第27批20000条数据耗时:0.001秒
    InnoDB第27批插入20000条数据耗时0.13秒
    生产第28批20000条数据耗时:0.001秒
    InnoDB第28批插入20000条数据耗时0.119秒
    生产第29批20000条数据耗时:0.001秒
    InnoDB第29批插入20000条数据耗时0.121秒
    生产第30批20000条数据耗时:0.001秒
    InnoDB第30批插入20000条数据耗时0.12秒
    生产第31批20000条数据耗时:0.001秒
    InnoDB第31批插入20000条数据耗时0.216秒
    生产第32批20000条数据耗时:0.002秒
    InnoDB第32批插入20000条数据耗时0.33秒
    生产第33批20000条数据耗时:0.001秒
    InnoDB第33批插入20000条数据耗时0.131秒
    生产第34批20000条数据耗时:0.001秒
    InnoDB第34批插入20000条数据耗时0.128秒
    生产第35批20000条数据耗时:0.001秒
    InnoDB第35批插入20000条数据耗时0.169秒
    生产第36批20000条数据耗时:0.001秒
    InnoDB第36批插入20000条数据耗时0.12秒
    生产第37批20000条数据耗时:0.001秒
    InnoDB第37批插入20000条数据耗时0.177秒
    生产第38批20000条数据耗时:0.001秒
    InnoDB第38批插入20000条数据耗时0.197秒
    生产第39批20000条数据耗时:0.002秒
    InnoDB第39批插入20000条数据耗时0.206秒
    生产第40批20000条数据耗时:0.001秒
    InnoDB第40批插入20000条数据耗时0.123秒
    生产第41批20000条数据耗时:0.001秒
    InnoDB第41批插入20000条数据耗时0.126秒
    生产第42批20000条数据耗时:0.001秒
    InnoDB第42批插入20000条数据耗时0.12秒
    生产第43批20000条数据耗时:0.001秒
    InnoDB第43批插入20000条数据耗时0.338秒
    生产第44批20000条数据耗时:0.001秒
    InnoDB第44批插入20000条数据耗时0.149秒
    生产第45批20000条数据耗时:0.001秒
    InnoDB第45批插入20000条数据耗时0.131秒
    生产第46批20000条数据耗时:0.001秒
    InnoDB第46批插入20000条数据耗时0.19秒
    生产第47批20000条数据耗时:0.001秒
    InnoDB第47批插入20000条数据耗时0.142秒
    生产第48批20000条数据耗时:0.002秒
    InnoDB第48批插入20000条数据耗时0.306秒
    生产第49批20000条数据耗时:0.002秒
    InnoDB第49批插入20000条数据耗时0.288秒
    生产第50批20000条数据耗时:0.001秒
    InnoDB第50批插入20000条数据耗时0.17秒
    InnoDB总生产数据耗时0.054秒
    InnoDB总插入数据耗时8.967秒
    InnoDB总生产数据耗时0.054秒

    InnoDB总插入数据耗时8.967秒

    这次插入千万级数据:

    代码:


    结果:

    生产第1批20000条数据耗时:0.002秒
    InnoDB第1批插入20000条数据耗时0.144秒
    生产第2批20000条数据耗时:0.001秒
    InnoDB第2批插入20000条数据耗时0.132秒
    生产第3批20000条数据耗时:0.001秒
    InnoDB第3批插入20000条数据耗时0.127秒
    生产第4批20000条数据耗时:0.001秒
    InnoDB第4批插入20000条数据耗时0.131秒
    生产第5批20000条数据耗时:0.001秒
    InnoDB第5批插入20000条数据耗时0.118秒
    生产第6批20000条数据耗时:0.001秒
    InnoDB第6批插入20000条数据耗时0.218秒
    生产第7批20000条数据耗时:0.001秒
    InnoDB第7批插入20000条数据耗时0.145秒
    生产第8批20000条数据耗时:0.001秒
    InnoDB第8批插入20000条数据耗时0.125秒
    生产第9批20000条数据耗时:0.001秒
    InnoDB第9批插入20000条数据耗时0.124秒
    生产第10批20000条数据耗时:0.002秒
    InnoDB第10批插入20000条数据耗时0.14秒
    生产第11批20000条数据耗时:0.001秒
    InnoDB第11批插入20000条数据耗时0.135秒
    生产第12批20000条数据耗时:0.001秒
    InnoDB第12批插入20000条数据耗时0.164秒
    生产第13批20000条数据耗时:0.002秒
    InnoDB第13批插入20000条数据耗时0.298秒
    生产第14批20000条数据耗时:0.001秒
    InnoDB第14批插入20000条数据耗时0.145秒
    生产第15批20000条数据耗时:0.001秒
    InnoDB第15批插入20000条数据耗时0.146秒
    生产第16批20000条数据耗时:0.001秒
    InnoDB第16批插入20000条数据耗时0.123秒
    生产第17批20000条数据耗时:0.001秒
    InnoDB第17批插入20000条数据耗时0.123秒
    生产第18批20000条数据耗时:0.001秒
    InnoDB第18批插入20000条数据耗时0.148秒
    生产第19批20000条数据耗时:0.002秒
    InnoDB第19批插入20000条数据耗时0.356秒
    ……………………………………………………………………………………………………………………
    InnoDB第76批插入20000条数据耗时0.116秒
    生产第77批20000条数据耗时:0.001秒
    InnoDB第77批插入20000条数据耗时0.112秒
    生产第78批20000条数据耗时:0.001秒
    InnoDB第78批插入20000条数据耗时0.211秒
    生产第79批20000条数据耗时:0.003秒
    InnoDB第79批插入20000条数据耗时0.192秒
    生产第80批20000条数据耗时:0.001秒
    InnoDB第80批插入20000条数据耗时0.123秒
    生产第81批20000条数据耗时:0.001秒
    InnoDB第81批插入20000条数据耗时0.124秒
    生产第82批20000条数据耗时:0.001秒
    InnoDB第82批插入20000条数据耗时0.125秒
    生产第83批20000条数据耗时:0.001秒
    InnoDB第83批插入20000条数据耗时0.142秒
    生产第84批20000条数据耗时:0.001秒
    InnoDB第84批插入20000条数据耗时0.122秒
    生产第85批20000条数据耗时:0.001秒
    InnoDB第85批插入20000条数据耗时0.333秒
    生产第86批20000条数据耗时:0.001秒
    InnoDB第86批插入20000条数据耗时0.184秒
    生产第87批20000条数据耗时:0.001秒
    InnoDB第87批插入20000条数据耗时0.123秒
    生产第88批20000条数据耗时:0.001秒
    InnoDB第88批插入20000条数据耗时0.141秒
    生产第89批20000条数据耗时:0.001秒
    InnoDB第89批插入20000条数据耗时0.124秒
    生产第90批20000条数据耗时:0.001秒
    InnoDB第90批插入20000条数据耗时0.204秒
    生产第91批20000条数据耗时:0.001秒
    InnoDB第91批插入20000条数据耗时0.215秒
    生产第92批20000条数据耗时:0.001秒
    InnoDB第92批插入20000条数据耗时0.162秒
    生产第93批20000条数据耗时:0.001秒
    InnoDB第93批插入20000条数据耗时0.142秒
    生产第94批20000条数据耗时:0.001秒
    InnoDB第94批插入20000条数据耗时0.116秒
    生产第95批20000条数据耗时:0.001秒
    InnoDB第95批插入20000条数据耗时0.126秒
    生产第96批20000条数据耗时:0.001秒
    InnoDB第96批插入20000条数据耗时0.122秒
    生产第97批20000条数据耗时:0.001秒
    InnoDB第97批插入20000条数据耗时0.233秒
    生产第98批20000条数据耗时:0.002秒
    InnoDB第98批插入20000条数据耗时0.186秒
    生产第99批20000条数据耗时:0.001秒
    InnoDB第99批插入20000条数据耗时0.124秒
    生产第100批20000条数据耗时:0.001秒
    InnoDB第100批插入20000条数据耗时0.117秒
    生产第101批20000条数据耗时:0.001秒
    InnoDB第101批插入20000条数据耗时0.162秒
    生产第102批20000条数据耗时:0.001秒
    InnoDB第102批插入20000条数据耗时0.166秒
    生产第103批20000条数据耗时:0.001秒
    InnoDB第103批插入20000条数据耗时0.483秒
    生产第104批20000条数据耗时:0.002秒
    InnoDB第104批插入20000条数据耗时0.161秒
    生产第105批20000条数据耗时:0.001秒
    InnoDB第105批插入20000条数据耗时0.181秒
    生产第106批20000条数据耗时:0.001秒
    InnoDB第106批插入20000条数据耗时0.161秒
    生产第107批20000条数据耗时:0.001秒
    InnoDB第107批插入20000条数据耗时0.18秒
    生产第108批20000条数据耗时:0.003秒
    InnoDB第108批插入20000条数据耗时0.178秒
    生产第109批20000条数据耗时:0.001秒
    InnoDB第109批插入20000条数据耗时0.182秒
    生产第110批20000条数据耗时:0.001秒
    InnoDB第110批插入20000条数据耗时0.198秒
    生产第111批20000条数据耗时:0.001秒
    InnoDB第111批插入20000条数据耗时0.124秒
    生产第112批20000条数据耗时:0.001秒
    InnoDB第112批插入20000条数据耗时0.115秒
    生产第113批20000条数据耗时:0.001秒
    InnoDB第113批插入20000条数据耗时0.379秒
    生产第114批20000条数据耗时:0.001秒
    InnoDB第114批插入20000条数据耗时0.124秒
    生产第115批20000条数据耗时:0.001秒
    InnoDB第115批插入20000条数据耗时0.128秒
    生产第116批20000条数据耗时:0.001秒
    InnoDB第116批插入20000条数据耗时0.126秒
    生产第117批20000条数据耗时:0.001秒
    InnoDB第117批插入20000条数据耗时0.24秒
    生产第118批20000条数据耗时:0.001秒
    InnoDB第118批插入20000条数据耗时0.375秒
    生产第119批20000条数据耗时:0.003秒
    InnoDB第119批插入20000条数据耗时0.16秒
    生产第120批20000条数据耗时:0.001秒
    InnoDB第120批插入20000条数据耗时0.118秒
    生产第121批20000条数据耗时:0.001秒
    InnoDB第121批插入20000条数据耗时0.179秒
    生产第122批20000条数据耗时:0.001秒
    InnoDB第122批插入20000条数据耗时0.161秒
    生产第123批20000条数据耗时:0.002秒
    InnoDB第123批插入20000条数据耗时0.208秒
    生产第124批20000条数据耗时:0.002秒
    InnoDB第124批插入20000条数据耗时0.229秒
    生产第125批20000条数据耗时:0.001秒
    InnoDB第125批插入20000条数据耗时0.117秒
    生产第126批20000条数据耗时:0.001秒
    InnoDB第126批插入20000条数据耗时0.188秒
    生产第127批20000条数据耗时:0.001秒
    InnoDB第127批插入20000条数据耗时0.128秒
    生产第128批20000条数据耗时:0.001秒
    InnoDB第128批插入20000条数据耗时0.12秒
    生产第129批20000条数据耗时:0.001秒
    InnoDB第129批插入20000条数据耗时0.229秒
    生产第130批20000条数据耗时:0.002秒
    InnoDB第130批插入20000条数据耗时0.23秒
    生产第131批20000条数据耗时:0.001秒
    InnoDB第131批插入20000条数据耗时0.125秒
    生产第132批20000条数据耗时:0.001秒
    InnoDB第132批插入20000条数据耗时0.123秒
    生产第133批20000条数据耗时:0.001秒
    InnoDB第133批插入20000条数据耗时0.168秒
    生产第134批20000条数据耗时:0.002秒
    InnoDB第134批插入20000条数据耗时0.264秒
    生产第135批20000条数据耗时:0.001秒
    InnoDB第135批插入20000条数据耗时0.216秒
    生产第136批20000条数据耗时:0.001秒
    InnoDB第136批插入20000条数据耗时0.119秒
    生产第137批20000条数据耗时:0.001秒
    InnoDB第137批插入20000条数据耗时0.164秒
    生产第138批20000条数据耗时:0.002秒
    InnoDB第138批插入20000条数据耗时0.197秒
    生产第139批20000条数据耗时:0.001秒
    InnoDB第139批插入20000条数据耗时0.209秒
    生产第140批20000条数据耗时:0.001秒
    InnoDB第140批插入20000条数据耗时0.416秒
    生产第141批20000条数据耗时:0.001秒
    InnoDB第141批插入20000条数据耗时0.145秒
    生产第142批20000条数据耗时:0.001秒
    InnoDB第142批插入20000条数据耗时0.206秒
    生产第143批20000条数据耗时:0.001秒
    InnoDB第143批插入20000条数据耗时0.139秒
    生产第144批20000条数据耗时:0.001秒
    InnoDB第144批插入20000条数据耗时0.48秒
    生产第145批20000条数据耗时:0.001秒
    InnoDB第145批插入20000条数据耗时0.16秒
    生产第146批20000条数据耗时:0.002秒
    InnoDB第146批插入20000条数据耗时0.205秒
    生产第147批20000条数据耗时:0.001秒
    InnoDB第147批插入20000条数据耗时0.14秒
    生产第148批20000条数据耗时:0.001秒
    InnoDB第148批插入20000条数据耗时0.212秒
    生产第149批20000条数据耗时:0.001秒
    InnoDB第149批插入20000条数据耗时0.329秒
    生产第150批20000条数据耗时:0.003秒
    InnoDB第150批插入20000条数据耗时0.171秒
    生产第151批20000条数据耗时:0.001秒
    InnoDB第151批插入20000条数据耗时0.177秒
    生产第152批20000条数据耗时:0.001秒
    InnoDB第152批插入20000条数据耗时0.139秒
    生产第153批20000条数据耗时:0.001秒
    InnoDB第153批插入20000条数据耗时0.283秒
    生产第154批20000条数据耗时:0.001秒
    InnoDB第154批插入20000条数据耗时0.182秒
    生产第155批20000条数据耗时:0.002秒
    InnoDB第155批插入20000条数据耗时0.261秒
    生产第485批20000条数据耗时:0.001秒
    InnoDB第485批插入20000条数据耗时0.139秒
    生产第486批20000条数据耗时:0.001秒
    InnoDB第486批插入20000条数据耗时0.182秒
    生产第487批20000条数据耗时:0.001秒
    InnoDB第487批插入20000条数据耗时0.122秒
    生产第488批20000条数据耗时:0.001秒
    InnoDB第488批插入20000条数据耗时0.124秒
    生产第489批20000条数据耗时:0.001秒
    InnoDB第489批插入20000条数据耗时0.173秒
    生产第490批20000条数据耗时:0.001秒
    InnoDB第490批插入20000条数据耗时0.544秒
    生产第491批20000条数据耗时:0.001秒
    InnoDB第491批插入20000条数据耗时0.123秒
    生产第492批20000条数据耗时:0.001秒
    InnoDB第492批插入20000条数据耗时0.119秒
    生产第493批20000条数据耗时:0.001秒
    InnoDB第493批插入20000条数据耗时0.148秒
    生产第494批20000条数据耗时:0.001秒
    InnoDB第494批插入20000条数据耗时0.465秒
    生产第495批20000条数据耗时:0.001秒
    InnoDB第495批插入20000条数据耗时0.124秒
    生产第496批20000条数据耗时:0.001秒
    InnoDB第496批插入20000条数据耗时0.149秒
    生产第497批20000条数据耗时:0.001秒
    InnoDB第497批插入20000条数据耗时0.139秒
    生产第498批20000条数据耗时:0.001秒
    InnoDB第498批插入20000条数据耗时0.297秒
    生产第499批20000条数据耗时:0.001秒
    InnoDB第499批插入20000条数据耗时0.416秒
    生产第500批20000条数据耗时:0.003秒
    InnoDB第500批插入20000条数据耗时0.163秒
    InnoDB总生产数据耗时0.582秒
    InnoDB总插入数据耗时97.097秒
    对比可以看到,原生SQL批量添加1000W条数据,用时97.097秒。极大的提高了数据写入的速度。大数据的导入,有一种常用情况,就是读取其他文件,比如csv文件,或者txt文件,然后存储数据到数据,这时候,应该用原生PHP去读取数据,然后用原生SQL去往数据库写入,避免使用框架,对数据插入的速度造成影响。

    展开全文
  • 文章目录一、前言二、批量插入前准备1、插入到数据表的字段2、计算一行字段占用的空间3、在数据里做插入操作的时候,整体时间的分配三、批量插入数据测试1、SQL语句的大小限制2、查看服务器上的参数:3、计算一次能...
  • 插入一个记录需要的时间由下列因素组成,其中的数字表示大约比例:连接:(3)发送查询给服务器:(2)分析查询:(2)插入记录:(1x记录大小)插入索引:(1x索引)关闭:(1)这不考虑打开表的初始开销,每个并发...
  • 我们在做批量插入的时候,经常需要根据唯一字段判断,唯一字段相同时则进行更新,唯一字段不同时则进行插入。一般来说我们都是采用on duplicate key update 写法,只是假如我们需要、在唯一字段相同,并且满足其他...
  • 插入的方式和数据库引擎都会对插入速度造成影响,这篇文章旨在从理论和实践上对各种方法进行分析和比较,方便以后应用中插入方法的选择。  插入分析  MySQL中插入一个记录需要的时间由下列因素组成,其中的数字...
  • 一、MySQL性能优化之-影响性能的因素1.商业需求的影响不合理需求造成资源投入产出比过低,这里我们就用一个看上去很简单的功能来分析一下。需求:一个论坛帖子总量的统计,附加要求:实时更新从功能上来看非常容易...
  • 二、批量插入前准备 1、插入到数据表的字段 2、计算一行字段占用的空间 3、在数据里做插入操作的时候,整体时间的分配 三、批量插入数据测试 1、SQL语句的大小限制 2、查看服务器上的参数: 3、计算一次能插入的最大...
  • MySQL 批量插入数据,单次插入多少条数据效率最高

    千次阅读 多人点赞 2019-11-26 18:29:10
    文章目录一、前言二、批量插入前准备1、插入到数据表的字段2、计算一行字段占用的空间3、在数据里做插入操作的时候,整体时间的分配三、批量插入数据测试1、SQL语句的大小限制2、查看服务器上的参数:3、计算一次能...
  • 本实验通过多元线性回归分析,探究究竟哪些因素是地方财政教育支出(y)的影响因素,并做出预测。现有地区生产总值(x1)、年末常住人口(x2)、居民人均教育文化娱乐消费(x3)、居民教育消费价格指数(x4)、教育支出在地方...
  • 曾经用sqlite3在android手机上做过一个实验,如果每插入一条记录就commit一次(类似楼主的做法),其性能要比插入300条记录,commit一次差好几十倍。 不管是*nix还是windows,楼主的那种做法,效率都不会高,...
  • 用图床在Typora中插入图片

    千次阅读 2019-06-02 16:03:34
    国外的图床由于有空间距离等因素决定访问速度很慢影响图片显示速度。国内也分为单线空间、多线空间和cdn加速三种。 简单来说,就是一个保存图片的仓库,上传上去后,你可以用一个URL地址查看这张图片。 免费图床...
  • mysql 使用java 程序 批量插入 很慢

    千次阅读 2014-11-21 17:15:18
    插入一个记录需要的时间由下列因素组成,其中的数字表示大约比例: 连接:(3)  发送查询给服务器:(2)  分析查询:(2)  插入记录:(1x记录大小)  插入索引:(1x索引)  关闭:(1)  这不考虑打开表...
  • INSERT语句的速度插入一个记录需要的时间由下列因素组成,其中的数字表示大约比例:连接:(3)发送查询给服务器:(2)分析查询:(2)插入记录:(1x记录大小)插入索引:(1x索引)关闭:(1)这不考虑打开表的...
  • MySQL批量插入大量数据方法

    万次阅读 多人点赞 2018-05-31 16:47:06
    在MySQL数据库中,如果要插入上百万级的记录,用普通的insert into来操作非常不现实,速度慢人力成本高,推荐使用Load Data或存储过程来导入数据,我总结了一些方法分享如下,主要基于MyISAM和InnoDB引擎。...
  • [数据库] Navicat for MySQL触发器更新和插入操作

    万次阅读 多人点赞 2016-09-18 17:13:19
     我觉得来自两方面的因素:  1.存储过程需要显式调用,意思是阅读源码的时候你能知道存储过程的存在,而触发器必须在数据库端才能看到,容易被忽略。  2.Mysql的触发器本身不是很好,比如after delete无法...
  • 批量插入如何提高性能?原条件要求如下:1)原表:100万条记录;2)一次插入10万条记录;3)原表中并且有索引存在;... 然后分别针对这些可能的因素,一一证明这些因素是否真的影响到批量插入的性能
  • MyBatis批量插入和性能问题

    万次阅读 2016-08-17 16:22:45
    介绍在Mybatis中批量插入容易出现的性能隐患
  • MySql 大数据量快速插入和语句优化

    千次阅读 2011-08-16 08:16:28
    插入一个记录需要的时间由下列因素组成,其中的数字表示大约比例: 连接:(3) 发送查询给服务器:(2) 分析查询:(2) 插入记录:(1x记录大小) 插入索引:(1x索引) 关闭:(1) 这不考虑打开表的初始...
  • 同样的代码,在MySQL5.7上...本题中,影响插入效率的因素是,8.0默认开启了 log-bin 功能,在确定不用不到该功能的前提下,只要在配置中关闭即可。 在文件 my.ini或/etc/my.cnf中,修改mysqld节点的内容,如下:...
  • 有时候在创建数据库之后,有一些已经存在的数据需要插入到数据库,这就涉及到了数据的大规模批量插入了,如果循环使用insert into table values(a,b,c)插入速度将会比较慢,应该大部分时间都在事务的提交创建上了...
  • 三:插入排序 定义: 实例3: 四:希尔排序 定义: 实例4: 五:归并排序 定义: 实例5:迭代法 实例6:递归法 六:快速排序 定义: 实例7:迭代法 实例8:递归法 一:冒泡排序 定义: 冒泡排序...
  • MySQL触发器更新和插入操作

    千次阅读 2018-09-19 15:02:03
    MySQL触发器更新和插入操作 一、触发器概念 触发器(trigger):监视某种情况,并触发某种操作,它是提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序...
  • 大批量快速插入数据方法

    千次阅读 2012-08-10 14:14:23
    有时我们可能要往数据库插入大量数据,如果逐条插入的话会很慢,那有什么方法能 批量插入的吗,下面就说说我在工作中使用的一些方法吧。 方法一:采用多个value值的形式,代码如下: insert into table (column1,...
  • 哈希表的插入、查找、删除

    万次阅读 2016-06-09 13:58:30
    它通过关键码值映射到表中的一个位置来访问记录,以加快访问的速度。这个映射函数叫做散列函数,存放的数组叫做散列表。 例如,关键字为k,则把k放在f(k)的存储位置上。由此,不需要比较便可直接获取所查的记录。f...
  • 三锥角旋流器的分选结果受很多因素影响,溢流管直径对其影响较大。CFD数值模拟得到的三锥角旋流器内部流场切向速度,轴向速度及压力的分布与传统水力旋流器相符,同时,随着溢流管直径的增加:流场的最大切向速度...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 53,593
精华内容 21,437
关键字:

因素影响插入速度