gpt4 book ai didi

apache-camel - 如何在 Apache Camel 中设置一组流式 SQL 插入

转载 作者:行者123 更新时间:2023-12-01 15:56:09 26 4
gpt4 key购买 nike

我有一个包含超过 300 万行管道分隔行的文件,我想将其插入到数据库中。它是一个简单的表(不需要标准化)

设置监视文件的路径,使用流模式读取文件并分割行很容易。将行插入表中也将是一个简单的接线工作。

问题是:如何使用批量插入来做到这一点?假设 1000 行是最佳的……假设文件是​​流式传输的,那么 SQL 组件如何知道流已完成。假设该文件有 3,000,001 条记录。如何设置 Camel 来插入最后一条杂散记录?

可以一次插入一行——但这会非常慢。

最佳答案

我会推荐这样的东西:

from("file:....")
.split("\n").streaming()
.to("any work for individual level")
.aggregate(body(), new MyAggregationStrategy().completionSize(1000).completionTimeout(50)
.to(sql:......);

我没有验证所有语法,但计划是抓取文件,将其与流分开,然后聚合 1000 个组,并设置一个超时来捕获最后一个较小的组。这些聚合组可以简单地使主体成为字符串列表或批量 SQL 插入所需的任何格式。

关于apache-camel - 如何在 Apache Camel 中设置一组流式 SQL 插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30543724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com