每晚如何通过网络高速传输100 GB数据?

时间:2019-06-05 21:42:59

标签: sql-server elasticsearch apache-kafka spring-batch

有一个外部数据库,我们可以访问7个视图。每天早晨,我们都希望从这些视图中提取所有记录。似乎记录约为100GB。我尝试使用spring批处理,但是花了将近15个小时才能达到该记录的大小。我正在寻找一种解决方案,其中我可以做两件事:1.加快此过程,最多最多需要1或2个小时,如果出现网络故障,请通过电子邮件向利益相关者发送有关故障的信息。我们在Elasticsearch和MS SQL Server中都需要数据。

继我尝试过的事情

  1. 具有JDBC Source连接器的Apache Kafka:可以工作是因为视图没有主键列,也没有时间戳列

  2. 尝试了Spring批处理JdbcItemReader和RepositoryItemwriter,但是速度很慢。 (从MS SQL Server到MS SQL Server)

  3. 使用SpringBatch JdbcItemReader和KafkaItemWriter进行了尝试,Kafka使用者使用Elasticsearch批量索引。这是最快的过程,大约需要15个小时。块大小10k或块大小5k都花费相同的时间。我有什么选择?

  4. 由于Source db已禁用CDC,因此尝试将Debezium源连接器用于Kafka ut dint工作。

0 个答案:

没有答案