phoenix 批量插入优化(一次commit,多次commit比较)
来源:互联网 发布:佳能mp280清零软件 编辑:程序博客网 时间:2024/06/04 17:00
1、没插入phoenix表一条,commit一次
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.PreparedStatement;
import java.sql.Statement;
public class Test_phoenix {
public staticvoid main(String[] args) throws SQLException {
Statement stmt = null;
ResultSet rset = null;
int n=50;
Connection con = DriverManager.getConnection("jdbc:phoenix:43.247.90.151");
stmt = con.createStatement();
// stmt.executeUpdate("create table test (mykey integer not null primary key,mycolumn varchar)");
Long a=System.currentTimeMillis();
for(inti=0;i<n;i++){
stmt.executeUpdate("upsert into test values ("+i+",'Hello')");
con.commit();
}
Long b=System.currentTimeMillis();
System.out.println(b-a);
con.close();
}
}
2、插入多条后做一次commit
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Phoenix_test {
public staticvoid main(String[] args) throws SQLException {
Statement stmt = null;
Connection con = DriverManager.getConnection("jdbc:phoenix:43.247.90.151");
stmt = con.createStatement();
int n =50;
// stmt.executeUpdate("create table test (mykey integer not null primary key,mycolumn varchar)");
Long a=System.currentTimeMillis();
for(inti=0;i<n;i++){
stmt.executeUpdate("upsert into test values ("+i*5+",'Hello')");
}
con.commit();
Long b=System.currentTimeMillis();
System.out.println(b-a);
con.close();
}
}
结论:相同环境下,同时插入50条,第二种速度是第一种的5-10倍,并且数据量越大,第二种效果更明显,甚至能达到几十倍几百倍
- phoenix 批量插入优化(一次commit,多次commit比较)
- git中将多次commit合并为一次commit
- git rebase: 将多次commit合并为一次
- 整理本地多次commit
- Commit
- 使用git rebase合并多次commit
- 使用git rebase合并多次commit
- Map Reduce commit job 优化
- Gerrit多次commit造成多次review请求的解决方法
- git 撤销最后一次commit方法
- 减少commit和使用批量绑定
- 请commit!commit!
- Juniper、AL、思科IOX系统commit比较
- Git 上多次commit 合并成一个 patch
- hbase phoenix批量插入数据例子
- Mysql中的commit()语句
- mybatis中的事务处理(commit)
- Docker 修改已有镜像(commit )
- 跟着姜少学Java基础编程之九:数组
- GalaxyOJ-951 (思维)
- OpenCV—连通域分析connectedComponentsWithStats()
- 利用Java生成UUID
- MAC使用Charles,代理后,部分网页无法打开(您的连接不是私密连接)的解决方法
- phoenix 批量插入优化(一次commit,多次commit比较)
- Java基础知识--数组
- C语言中全局变量赋值的陷阱
- Flume 使用exec及avro方式实现数据收集
- 一张图看懂手机CPU性能——手机CPU性能天梯图
- USB重定向
- Nexys2七段LED显示操作
- 雅虎网站页面性能优化的34条黄金守则
- 解锁Activity的跳转新姿势———使用scheme跳转