每个excel数据量大概为6w行, 40列
从excel 或者json格式都可以, 我们已经有从excel转出的json数据. 主要需要的是高效率导入数据库这步
希望快速的导入MySQL以用于后续处理
语言不限
只需要写出核心代码, 交付我方用于其他模块儿使用
具体费用双方商议
已有多位联系我了, 不需要再花电费加我了, 有兴趣可以评论, 我如有需要会主动联系你
最后修改于将近 2 年前
java python都可进行开发
java 做过类似导入
一定有性能和场景要求吧,我想到的是直接开源DataX 理论上可以带宽跑满 具体也可以根据情况和场景要求
datax不管是性能和数据库多样性都都做得很好,但可惜的是datax并不支持直接从Excel导入,我的开源项目https://github.com/Breeze0806/go-etl,在架构上借鉴了datax,直接支持Excel(xlsx)的导入。
在项目中做过Excel文件导入数据库。使go语言开发。可以和我联系。
1111111111
找到人没有
如果是task并行mysql batch insert,1GB左右csv文件5min左右完成,csv的1GB数据行数比excel多很多啊
这里我写过一个开源项目可以帮你,使用go语言写的,excel要求是xlsx的文本格式,mysql要求5.6版本以上,https://github.com/Breeze0806/go-etl, 速度上你不用担心,这个项目已经处理过上千万行数据,但是异常数据检测、提示、修复或另行管理还是需要深入探讨的,因为是开源项目你可以先试试效果,如果好用请别白嫖,请给个star哦!如果有其他的需求,请联系我。
四年工作经验, 前后端去全找
明显很多人没有试过1万行以上的数据导入mysql。要考虑的因素并不是什么语言,而是影响速度的关键点在哪里。1万行插入,15秒内完成算合格,用的不对要5分钟以上,6万行相应乘以比例。 另一个问题是异常数据检测、提示、修复或另行管理,重复数据如何避免冲突退出。 要做好、适应日常工作并不容易。
5年Java后端研发,经验丰富,有需要联系我
不是,这个功能 mac 的 https://sequelpro.com/ 直接支持的呀。
我想竞选 目前看出该需求需要解决的问题 1 oom 2.高io 3时效性和与准确性 4 监控
我的优势 高并发场景处理经验比较丰富 个人做bi项目长达2年excel大量数据导入导出有开发经验
我会我会
大数据经验,处理过千万数据导入,导出,半小时内处理完成
大数据经验
6年java dddd...
大数据量,应该碰到的是内存崩溃,还有就是数据长时间未落库,其他应该没啥问题😂
wechat bxb965738071
我去年正好做某银行项目时用JAVA语言完成了一个类似的企业级解决方案,可以通过配置的方式完成excel到数据库字段的映射,同时可以在日志文件或专门建立的数据库表中查看执行日志,分析出错原因, 几乎能直接拿来用,有需要可以和我联系,谢谢!
为了高效导入大量数据到MySQL数据库,你可以采用以下方法:
批量插入优化:将数据分成小批量进行插入,而不是每行都执行插入操作。这样可以减少与数据库的通信次数,提高导入速度。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; // 建立数据库连接 Connection connection = null; try { String url = "jdbc:mysql://localhost:3306/database_name"; String username = "your_username"; String password = "your_password"; connection = DriverManager.getConnection(url, username, password); // 设置自动提交为false connection.setAutoCommit(false); } catch (SQLException e) { e.printStackTrace(); } String sql = "INSERT INTO table_name (column1, column2, ...) VALUES (?, ?, ...)"; try ( PreparedStatement statement = connection.prepareStatement(sql); ) { int batchSize = 1000; // 每批次插入的记录数 int count = 0; for (YourDataClass item : data) { // 设置参数 statement.setString(1, item.getProperty1()); statement.setInt(2, item.getProperty2()); // ... statement.addBatch(); if (++count % batchSize == 0) { // 执行批量插入 statement.executeBatch(); connection.commit(); } } // 执行剩余的批量插入 statement.executeBatch(); connection.commit(); } catch (SQLException e) { e.printStackTrace(); } finally { if (connection != null) { try { // 恢复自动提交 connection.setAutoCommit(true); connection.close(); } catch (SQLException e) { e.printStackTrace(); } } }
在上面的代码中,我们设置了每批次插入的记录数为1000,你可以根据实际情况进行调整。在每个批次插入后,使用commit()方法提交更改,以保持数据的一致性。
commit()
使用连接池:使用连接池可以减少数据库连接的创建和销毁开销,并提供连接的复用。
import org.apache.commons.dbcp2.BasicDataSource; import javax.sql.DataSource; // 创建连接池 BasicDataSource dataSource = new BasicDataSource(); dataSource.setUrl("jdbc:mysql://localhost:3306/database_name"); dataSource.setUsername("your_username"); dataSource.setPassword("your_password"); // 设置连接池属性 dataSource.setInitialSize(10); dataSource.setMaxTotal(100); dataSource.setMaxIdle(20); dataSource.setMinIdle(5); // 从连接池中获取连接 Connection connection = null; try { connection = dataSource.getConnection(); // ... } catch (SQLException e) { e.printStackTrace(); } finally { if (connection != null) { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } }
通过使用连接池,可以更有效地管理和利用数据库连接。连接池可以在数据库连接的需求量增加时动态地创建连接,同时在连接不再使用时将其返回给连接池进行重用。
MySQL客户端可以直接导入
下载APP以便及时收到回复或进展
java python都可进行开发
java 做过类似导入
一定有性能和场景要求吧,我想到的是直接开源DataX
理论上可以带宽跑满
具体也可以根据情况和场景要求
datax不管是性能和数据库多样性都都做得很好,但可惜的是datax并不支持直接从Excel导入,我的开源项目https://github.com/Breeze0806/go-etl,在架构上借鉴了datax,直接支持Excel(xlsx)的导入。
在项目中做过Excel文件导入数据库。使go语言开发。可以和我联系。
1111111111
找到人没有
如果是task并行mysql batch insert,1GB左右csv文件5min左右完成,csv的1GB数据行数比excel多很多啊
这里我写过一个开源项目可以帮你,使用go语言写的,excel要求是xlsx的文本格式,mysql要求5.6版本以上,https://github.com/Breeze0806/go-etl, 速度上你不用担心,这个项目已经处理过上千万行数据,但是异常数据检测、提示、修复或另行管理还是需要深入探讨的,因为是开源项目你可以先试试效果,如果好用请别白嫖,请给个star哦!如果有其他的需求,请联系我。
最后修改于
四年工作经验, 前后端去全找
明显很多人没有试过1万行以上的数据导入mysql。要考虑的因素并不是什么语言,而是影响速度的关键点在哪里。1万行插入,15秒内完成算合格,用的不对要5分钟以上,6万行相应乘以比例。
另一个问题是异常数据检测、提示、修复或另行管理,重复数据如何避免冲突退出。
要做好、适应日常工作并不容易。
5年Java后端研发,经验丰富,有需要联系我
不是,这个功能 mac 的 https://sequelpro.com/ 直接支持的呀。
我想竞选
目前看出该需求需要解决的问题
1 oom 2.高io 3时效性和与准确性 4 监控
我的优势
高并发场景处理经验比较丰富 个人做bi项目长达2年excel大量数据导入导出有开发经验
我会我会
大数据经验,处理过千万数据导入,导出,半小时内处理完成
大数据经验
6年java dddd...
大数据量,应该碰到的是内存崩溃,还有就是数据长时间未落库,其他应该没啥问题😂
wechat bxb965738071
我去年正好做某银行项目时用JAVA语言完成了一个类似的企业级解决方案,可以通过配置的方式完成excel到数据库字段的映射,同时可以在日志文件或专门建立的数据库表中查看执行日志,分析出错原因,
几乎能直接拿来用,有需要可以和我联系,谢谢!
为了高效导入大量数据到MySQL数据库,你可以采用以下方法:
批量插入优化:将数据分成小批量进行插入,而不是每行都执行插入操作。这样可以减少与数据库的通信次数,提高导入速度。
在上面的代码中,我们设置了每批次插入的记录数为1000,你可以根据实际情况进行调整。在每个批次插入后,使用
commit()
方法提交更改,以保持数据的一致性。使用连接池:使用连接池可以减少数据库连接的创建和销毁开销,并提供连接的复用。
通过使用连接池,可以更有效地管理和利用数据库连接。连接池可以在数据库连接的需求量增加时动态地创建连接,同时在连接不再使用时将其返回给连接池进行重用。
MySQL客户端可以直接导入