500萬條數據,lambda並行流表現如何

500萬條數據,lambda並行流表現如何

上午拋磚引玉,寫了一篇100萬數據lambda和for循環迭代的效果,直觀來看沒什麼區別。看到好多網友留言,討論了lambda。考慮到我寫的那篇文章可能不夠嚴謹。Lambda除了在寫法上的不同,還有其它什麼作用呢?於是去上網繼續深入學習lambda,既然官方推出來,必然存在合理性。學到了它還有數據並行化處理。

並行和併發有什麼區別?我的理解是並行是建立在多核處理器的基礎,很好理解,就像流水線一樣,幾條流水線同時工作。那麼併發就更容易理解了,單核和多核都可以,通過CPU時間片實現併發調度。

紙上得來終覺淺,絕知此事要躬行!這次用500百萬的數據來進行實驗。代碼如下:

500萬條數據,lambda並行流表現如何

源碼

執行最終效果如下:

500萬條數據,lambda並行流表現如何

執行效果

500萬數據已經是我本機的極限了,1000萬數據要發生內存洩漏了。從執行的效果來看,大數據處理方面lambda還是很有優勢的。但是lambda並行流處理卻沒有體現出優勢,可能是我本機CPU核數不夠,性能不佳等。通過這兩篇文章,大概瞭解了lambda在大數據方面處理的優勢,這也很符合這個時代發展的潮流,技術變革有點社會發展規律一樣,都是螺旋式前進的。


分享到:


相關文章: