0
A
回答
3
默認情況下,每一個地圖的任務將在其自己的JVM上運行。所以你不會從使用靜態對象中獲得任何好處。我會建議不要做一些奇怪的事情,除非你真的面對性能問題。
+0
儘管Hadoop可以重用JVM,並且Mapper對象可用於下一個地圖任務,但的確如此。那麼跨越其生命週期方法緩存一些數據可能會有好處。這也意味着您必須在生命週期方法中正確地初始化和清理,而不是構造函數 – 2013-06-11 22:46:08
1
添加到什麼恩諾和羽蛇神說。 作爲當曾經映射任務在JVM運行時,它創建映射器類的單個對象,並調用圖FN爲每個輸入(即,用於使用的TextInputFormat當一個文件的每行)。 但它按順序調用映射fn,而不是並行調用。 因此,您正在使用的對象應該沒有線程安全問題。
問候, 馬尼什
相關問題
- 1. C++線程安全映射
- 2. Java中的線程安全映射
- 3. C++映射的線程安全
- 4. 線程安全哈希映射?
- 5. 線程安全隊列映射
- 6. 線程安全的映射,具有空鍵功能
- 7. Collections.synchronized映射是否使迭代器線程安全
- 8. 部分線程安全是否使Java類線程安全?
- 9. 從DispatcherObject繼承的類是線程安全的還是線程不安全的?
- 10. C# - 可以安全地擁有一個獨立的線程擁有的形式?
- 11. 保留插入順序的線程安全映射
- 12. 線程安全的弱密鑰哈希映射
- 13. 類應該是線程安全的嗎?
- 14. 這些類是線程安全的嗎?
- 15. Java是這個類的線程安全
- 16. Hessian類SerializerFactory是線程安全的嗎?
- 17. 如何擁有線程安全的Rails初始化器?
- 18. 線程安全與地圖和併發哈希映射
- 19. 緩存映射的這種用法在多線程環境中是否安全?
- 20. 彈簧安全映射
- 21. Tomcat安全角色映射
- 22. Ruby類方法是否線程安全?
- 23. Joda-Time DateTimeFormatter類是否線程安全?
- 24. 這個類是否線程安全?
- 25. 橙色分類是否線程安全?
- 26. 是靜態類線程安全
- 27. 查找安裝的PHP是線程安全的還是非線程安全的?
- 28. 是AmazonSimpleNotificationServiceClient線程安全的?
- 29. 是Magento線程安全的?
- 30. 是RSA_sign線程安全的
這聽起來像過早優化對我來說,你確定你真正需要的多線程,如果你已經在使用Hadoop來分發處理的負荷? – Quetzalcoatl 2013-03-20 16:56:18
我不想使用多線程。我害怕hadoop可以在內部使用線程,並想知道Mapper的一個實例訪問某個靜態變量是否安全。 – ngrislain 2013-03-20 17:21:14
好吧,如果你在分佈式模式下運行,這些都將是不同的機器,所以靜態對象不會給你帶來任何好處,因爲Enno Shioji說。即使在僞分佈式模式下,它也應該在它自己的JVM中,所以同樣適用。 – Quetzalcoatl 2013-03-20 17:24:58