我使用彈簧批處理框架用於蒙戈分貝處理大量的數據,和在蒙戈分貝再次存儲Mongo Aggregate使用java驅動程序對大數據進行查詢?
的代碼如下:
Aggregation agg = newAggregation(
project("field1")
//projection on few fields
group("field1")
//group opeartion
project(
// again project on grouped result
)
).withOptions(newAggregationOptions().allowDiskUse(true).build());
AggregationResults<BeanName> agreatiR = dbTemplate.aggregate(agg,collectionName,BeanName.class);
對於較少的數據(我已在100k的測試) ,聚合框架可以正常工作,但是對於2M來說,它超出了16 MB的限制。
我不想使用$進行操作,首先它不是必需的,也有沒有任何似乎API使用$出春天的數據蒙戈
而且我已閱讀返回遊標,這將允許超出尺寸限制,但似乎沒有任何彈簧數據mongo API支持。
蒙戈DB版本:2.6
Mongo的驅動程序版本:3.2.0
的大集合,試圖在10萬條記錄,以使其工作分裂您處理。 – jeorfevre
我希望如果可以得到一個解決方案的工作相同的數據沒有分裂 –
你可以提供代碼itemprocessor?你一次處理多少數據? – jeorfevre