GBase 8a MPP Cluster JDBC insert into性能提升方式

GBase 8a查看一个库或schema占用的空间 GBase 8a 目前版本都是采用一个库一个目录,表是库下面的子目录的方式保存数据,本文提供了一些查看一个库或schema占用磁盘空间方法以供参考。 文件系统级估算 直接从文件系统,找到该库所在的目录,计算其占有的空间。该才做仍然会消耗大量的磁盘资源,表越多,列越多,消耗越大。 du -sh 安装目录/gnode/userdata/gbase/库名 影响程度建议在实际环境测试后,再决定是否使用。比如100万个表,预计可能要几分钟到几十分钟的磁盘消耗,换SSD等高速盘会极大改善影响程度。 需要计算每个节点的空 阅读详情

JDBC接口的insert into values方式性能提升使用攒批方式,有两种:
1)
采用insert … values (),(),(),()… 方式提交insert语句
2)
通过jdbc接口的rewriteBatchedStatements参数设置,在jdbc接口层进行insert values的攒批:
该方法在jdbc层对单条的insert values进行自动攒批,拼装成insert values(),(),()…的形式下发sql。
具体接口使用方法例程如下:
String URL = “jdbc:gbase://192.168.103.144:5258/test? rewriteBatchedStatements=true”;

String sql = “insert into t1 (id, name) values(?,?)”;
Connection conn = DriverManager.getConnection(URL,”testuser”,”testuserpasswd”);
PreparedStatement stm = conn.prepareStatement(sql);
for (int i=0; i<10000; i++) {
stm.setString(1, …);
stm.setString(2, …);
stm.addBatch();
}
stm.executeBatch();
以上方法适用于应用开发将单条插入转成insert values,需要程序中使用prepareStatement和executeBatch方式执行插入,并调整jdbc连接参数rewriteBatchedStatements=true。

GBase 8a MPP数据库如何通过JDBC驱动实现批量插入数据 阅读详情

相关推荐

COMSOL电磁仿真案例——感应线圈

COMSOL电磁建模仿真案例——感应线圈

冲击10w 5万+

STM32F405RG与TS2007FC音频系统设计与优化

数字音频处理系统在现代嵌入式开发中扮演着重要角色,其核心在于高效的数字信号处理与功率放大的协同工作。通过Cortex-M4内核的硬件浮点运算单元和DSP指令集,STM32系列微控制器能够实时处理音频算法,而D类功放芯片如TS2007FC则提供高效率的功率转换。这种组合特别适合需要高质量音频输出的场景,如车载音响、智能家居设备等。在工程实践中,信号完整性设计、电源噪声抑制和实时算法优化是关键挑战。通过合理使用硬件加速、DMA传输和内存优化技术,可以显著提升系统性能。热词TS2007FC的高效功率转换和STM3

germmy-神一样的开发 338

下拉式菜单设计——Power BI

Power BI导航设计:多级下拉菜单

weixin_41542593的博客 5392

GBase南大通用 8a 执行 insert select 语句目标表中 varvhar 字段长度越长 执行越慢

GBase南大通用8a

ycm_dn的博客 484

GBase 8a Mpp Cluster集群产品性能优化篇之Insert

将循环执行insert values的场景改为一个insert select语句,这样避免多次提交,性能提升很高。 改写成一个SQL, 循环子查询改写成join,外部进行多列的group insert into SELECT tt1.aac001, Sum(bae089) s, acc2.bac020, bic349, bic346 FROM testdb.tt1 LEFT JOIN YL180_ac47 ON YL180_ac47.aac001 = tt1.aac001 AND bae152 = ‘1’

zhu1981hui的博客 586

GBase8s数据库insert语句VALUES 子句

VALUES 子句可指定要插入到一列或多列内的值。当您使用 VALUES 子句时,您可一次仅插入 一行。 跟在 VALUES 关键字之后的每一值都指定给罗列在 INSERT INTO 子句中的对应列(或如果未指 定列的列表,则以列的顺序罗列)。 如果您正在将引用的字符串插入到列内,则可无差错地插入 的最大长度是 256 字节。 VALUES 子句 在 GBase 8s ESQL/C 中,如果您使用 input_var 变量来指定该值,则可向表内插入长于 256 字节 的字符串。 要了解在 VALUES 子句

weixin_48486849的博客 1096

Gbase 8a 支持 insert into ... select ... from dual 功能的参数。

参数_t_gcluster_use_new_dual,控制 gcluster 是否使用 dual 表的新的实现方式,新 的实现方式支持 insert into ... select ... from dual 等功能。 0: 使用旧的实现方式,不支持 insert into ... select ... from dual 等功能; 1:使用新的实现方式,支持 insert into ... select ... from dual 等功能; 取值范围:0、1;

weixin_49774975的博客 1203

[GBase 8s 教程]GBase 8s INSERT INTO 语句

GBase 8s INSERT INTO 语句用于向表中插入新记录。 语法 INSERT INTO 语句语法格式如下: INSERT INTO TABLE_NAME (column1, column2, column3,...columnN) VALUES (value1, value2, value3,...valueN); column1, column2,…columnN 为表中字段名。 ...

liaosnet的专栏 6764

国产数据库---GBase8a 在Insert into select * from Order by

Order by 拉表问题: 当复制一个分布表的表结构和数据到一个新表时,如果在select阶段有排序,集群会将所有数据拉倒发起节点,在发起节点进行排序,排序完毕后再发送到各个节点,这和在各节点自己排序然后直接插入到本节点结果是一致的,但耗时却差距很大,如: create table t(a int,b int) distributed by (‘a’); create table new_t like t; 其中t表中有大量数据; Insert into new_t select * from.

u010682157的博客 1162

提高INSERT速度

当我采集的数据量达到8000万时,往一张具有唯一索引的表里批量插入数据时,需要检查重复,因此插入熟读越来越慢。今天就来聊下如何提高INSERT的执行速度。 批量插入比单条插入速度快 INSERT INTO table (field1,field2,field3) VALUES (‘a’,”b”,”c”), (‘a’,”b”,”c”),(‘a’,”b”,”c”); INSERT INTO ...

一个不靠谱的程序员 7228

GBase 8a优化建议

GBase 8a其他优化建议

weixin_42423599的博客 939

GBase 8a MPP使用时 数据库基础问题之二

2.2 参数配置 2.2.1 集群表名、字段名支持中文 问题现象 如何设置集群表名、字段名使其支持中文? 处理方法 从 862 版本开始集群表名字段名支持中文字符。需要打开参数 gcluster_extend_ident 。参数 gcluster_extend_ident 是用来控制集群是否可以创建表 名字段含有中文、特殊字符的参数。 方法 1 修改配置文件加入 gcluster_extend_ident = 1 。此种方法需要重启集群服务生效。 方法 2 在不重启的情况下 set global gclus

aisirea的博客 720

GBase 8a数据库多并发insert性能缓慢的优化

更多精彩内容尽在南大通用技术社区,南大通用致力于成为用户最信赖的产品供应商。

weixin_47390342的博客 783

GBase 8a最佳实践(一)性能调优

更多精彩内容尽在,南大通用致力于成为用户最信赖的数据库产品供应商。

weixin_47390342的博客 1510

使用JDBC操作Mysql进行insert,用value还是values?

一个简单的insert语句 insert into t(name,price,score) value(?,?,?) 我们首先要知道在mysql中,value和values都是被支持的,我有时候写的时候没有注意,今天发现,这两个居然有性能差别。 测试环境mysql8.0,JDBC8.0 @Test public void test() throws SQLExcept...

P19777的博客 2204

gbase数据库中批量插入数据慢的原因

本文针对数据库操作优化提出三点建议:1)在数据源连接中设置INSERT_CURSOR=1参数以提升性能;2)将GBASE数据库中的CLOB类型改为TEXT类型可显著提高处理速度;3)避免使用MyBatis-Plus的MetaObjectHandler拦截器进行自动填充,建议在批量保存前手动设置公共字段值。这些调整能有效改善数据库操作效率。

qq_36635569的博客 373

GBase 8c 实践之导入最佳实践

如果从指定表插入数据到当前表,例如在数据库中创建了一个表customer_t1的备份表customer_t2,现在需要将表customer_t1中的数据插入到表customer_t2中,则可以执行如下命令。与COPY命令相比较,\copy命令不是读取或写入指定文件的服务器,而是直接读取或写入文件。插入如果不能使用copy命令,而您需要进行sql插入,可以根据情况使用多行插入。\COPY只适合小批量,格式良好的数据导入,不会对非法字符做预处理,也无容错能力,无法适用于含有异常数据的场景。...

TYD123013的博客 1014

C++_GUI_Qt4编程(第二版)_C++GUIQt4编程_QT_

很经典的编程资料C++_GUI_Qt4编程(第二版),推荐大家参考学习

上一篇: GBase 8a MPP Cluster时间字段作为分区键
下一篇: perl 通过DBI连接GBase 8a MPP Cluster
tornadolyt1978
博客等级 码龄14年 10粉丝 20原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值