- 我在MySQL中有大约1500万条记录(只读(,这些记录将使用10个表的联接来获取。每天大约插入50000条新记录。这个数字将来还会继续增加
- 每个记录将由一个java程序独立处理。将对同一记录进行多次处理,并根据处理结果计算输出
- 结果将存储在另一个数据库中
- 处理应在一小时内完成
我的问题是
- 如何以分布式方式设计处理引擎(java程序集群(,使处理尽可能快?更确切地说,我想在那个时候启动许多spot实例并完成处理
- mysql会成为读取瓶颈吗
- 我在大数据解决方案方面没有任何经验。我应该使用火花或任何其他地图还原解决方案吗?如果是,我该如何处理
我也遇到过类似的情况,我们每天收集大约1500万条记录。我所做的是创建一些集合表,并对其进行旋转和初始处理。完成后,我将数据转移到下一阶段,在将其添加到大型数据集合之前,将进行进一步的处理。将其分解将获得最佳性能,并避免必须运行大量数据。
我不知道你对处理数据的意思是什么,也不知道你为什么要用Java来处理数据,你可能有充分的理由。我想,如果您将其卸载到MySQL并让它尽可能多地进行处理,性能会更好。