在hazelcast中批量加载数据的最佳方法

在hazelcast中批量加载数据的最佳方法,hazelcast,Hazelcast,我需要使用csv/平面文件在hazelcast中加载3亿条记录(每条记录60KB)。以最快的方式加载所有这些数据的最佳方式是什么? 我可以一条记录一条记录地阅读并绘制地图。是否有一种方法可以在一个map.put中执行多个写入?或者有任何实用程序可以做到这一点吗?您应该使用IMap::setAsync或IMap::putAll。第一个选项可能要快得多,因为它是完全异步的,不返回任何值,从而优化了网络流量 无论如何,加速的最重要因素是序列化。如果您使用Java对象,您真的应该考虑使用DataSeri

我需要使用csv/平面文件在hazelcast中加载3亿条记录(每条记录60KB)。以最快的方式加载所有这些数据的最佳方式是什么?
我可以一条记录一条记录地阅读并绘制地图。是否有一种方法可以在一个map.put中执行多个写入?或者有任何实用程序可以做到这一点吗?

您应该使用IMap::setAsync或IMap::putAll。第一个选项可能要快得多,因为它是完全异步的,不返回任何值,从而优化了网络流量


无论如何,加速的最重要因素是序列化。如果您使用Java对象,您真的应该考虑使用DataSerializable来优化序列化

除了Chris的评论,您还可以在Hazelcast模拟器代码库中找到异步加载程序/拖缆的示例。此代码用于在测试之前将数据加载到网格。 作为一个选项,您可以练习
map.putAll
方法。但在这种情况下,您需要找到临时映射的最佳批量大小

干杯,
Vik

亲爱的用户296602。如果您满意,请接受其中一个答案。找到最佳批量大小的策略是什么?@Vik Gamov根据该主题有任何更新/改进吗?找到最佳批量大小的策略是什么?测试,因为有太多的因素“没有一个共同的最佳批量”。