PDI(Kettle)加速插入数据的速度
本例背景为: 用PDI(Kettle) 向Mysql数据库导入大量的日志分析数据,开始导入的速度300+r/s,
通过设置如下JDBC的连接参数,明显提升了写入的速度。
useServerPrepStmts=false
rewriteBatchedStatements=true
useCompression=true
原理参考 :http://forums.pentaho.com/showthread.php?142217-Table-Output-Performance-MySQL#9
To remedy this, in PDI I create a separate, specialized Database Connection I use for batch inserts. Set these two MySQL-specific options on your Database Connection:
useServerPrepStmts false
rewriteBatchedStatements true
Used together, these "fake" batch inserts on the client. Specificially, the insert statements:
INSERT INTO t (c1,c2) VALUES ('One',1);
INSERT INTO t (c1,c2) VALUES ('Two',2);
INSERT INTO t (c1,c2) VALUES ('Three',3);
will be rewritten into:
INSERT INTO t (c1,c2) VALUES ('One',1),('Two',2),('Three',3);
So that the batched rows will be inserted with one statement (and one network round-trip). With this simple change, Table Output is very fast and close to performance of the bulk loader steps.
转载于:https://blog.51cto.com/fuqiang82/1628093
PDI(Kettle)加速插入数据的速度相关推荐
- 4、提高插入数据的速度
在 MySQL 中,向数据表插入数据时,索引.唯一性检查.数据大小是影响插入速度的主要因素.本节将介绍优化插入数据速度的几种方法. 根据不同情况,可以分别进行优化. 对于 MyISAM 引擎的表,常见 ...
- 数据库设计的核心原则 外键的设计 提高插入数据速度
大道至简:数据库设计的核心原则 数据库设计,不得不承认,有很多专业化的理论知识,但是对于初学者来说,只需要大道至简的原则就可以了. 能不重复的就不重复,太重复的就拆开,使用指定数据做识别. 外键的设计 ...
- oracle 压缩 插入速度,求助大佬:向压缩表插入数据,压缩未生效
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 建表语句: create table ODS_M_ACC_BILL(month_id varchar2(6),...) compress PARTITIO ...
- mysql2013年8月怎么打出来_2020年8月31日,上周完成了一个查询接口来检查mysql的数据,速度很慢,20200831,从,MySQL,中查,贼...
2020-08-31 上周完成一个查询接口,从MySQL中查数据,速度贼慢, 原因是数据5000万+,所以真正接触优化的机会来了,所以决定好好研究一下,做一个记录. 事情是这样的,mysql表中只有两 ...
- (五十二)大白话不断在表中插入数据时,物理存储是如何进行页分裂的?
上回我们讲到了数据页的物理存储结构,数据页之间是组成双向链表的,数据页内部的数据行是组成单向链表的,每个数据页内根据主键做了一个页目录 然后一般来说,你没有索引的情况下,所有的数据查询,其实在物理层面 ...
- MySQL 学习笔记(4)— 组合查询、子查询、插入数据、更新/删除表数据、增加/删除表中的列以及重命名表
1. 组合查询 1.表的加减法 表的加法,即求 product 和 product2 的并集,UNION 运算会除去重复的记录 SELECT product_id, product_name FROM ...
- MySQL如何快速插入数据
前言: 日常学习和工作中,经常会遇到导数据的需求.比如数据迁移.数据恢复.新建从库等,这些操作可能都会涉及大量数据的导入 有时候导入进度慢,电脑风扇狂转真的很让人崩溃,其实有些小技巧是可以让导入更快速 ...
- mysql innodb myisam 插入数据_mysql innodb换成myisam后插入数据变快?
myisam没有事务支持,它的连续的插入和查询速度都比Innodb快很多,但是如果需要插入和查询穿插着来,那么myisam是表锁,innodb是行锁,innodb的并发性好,并且innodb是支持事务 ...
- .NET Excel 2003 批量插入数据很慢的解决办法
.Net利用Office组件的操作Excel批量插入数据据的时候,会非常慢. 我也曾经想利用其它组件来实现这个功能,但是效果不是很理想.后来经过查阅资料,发现Excel.Range的Value属性是O ...
最新文章
- 为了去重复,写了一个通用的比较容器类,可以用在需要比较的地方,且支持Lamda表达式...
- Ubuntu中使用WPS
- Python之functools.reduce使用
- boost::function用法的测试程序
- 编译原理:用lex/flex做词法分析
- SQL获取上个月的第一天最后一天datetime
- 【Kettle】第一篇,Pan 的使用
- opencv threshold_OpenCV致幻
- android 可拖拽View的简单实现
- Shortest Prefixes(poj 2001)
- 高频电子线路实验 03 - | 环形混频与直接调频
- 世界地图可以无限放大_不敢相信!世界地图,你竟然骗了我这么多年...
- 系统软件版本变更规范
- 可靠性 可用性 可维护性
- Python带你进入现代人的绝境
- 关于5G,四大运营商说......
- php 获取视频首帧,PHP获取视频的第一帧与时长
- java冒泡排序实现思路_054-冒泡排序算法思路图解
- 韩信点兵(C语言实现)
- 利用spring boot 写一个稳定的爬虫