我有大量的数据(1000GB)作为blob或clob在oracle数据库中的一个表,我计划将整个blob数据迁移到amazon s3。
我想的解决方案是写jdbc api,从oracle中提取blob数据,然后用aws sdk推送到amazon s3。
我为这个方法写了poc,以找出上传数据需要多少时间,从最初的测试中,我发现上传15GB的数据需要1个小时(使用多线程)。
但我不认为我可以使用这种方法上传1000GB的数据到s3,因为这将需要大量的时间。
有什么其他的方法可以实现这个目标吗?
更新了问题
我打算在这个用例中使用远程远程分区的spring batch,这是一个好方法吗?
谢谢你的回复
寻找Amazon SnowBall服务。
你可以把blobclob数据导出到一个文件中。一旦导出到文件,将文件上传到S3 bucket。你可以使用任何开源ETL工具来提取blob数据。不要尝试直接从数据库中提取,这将需要大量的时间。我建议使用talend工具并迁移它。如果你使用talend工具,不需要导出到文件,你可以直接把数据从表复制到s3 bucket。