[英]How does hive/hadoop assures that each mapper works on data that is local for it?
讓我困擾的兩個基本問題:
背景:我有一個由32台計算機組成的配置單元集群,並且:
"CLUSTERED BY(MY_KEY) INTO 32 BUCKETS"
hive.enforce.bucketing = true;
謝謝!
如果沒有聯接,則使用用於數據局部性的常規Hadoop Map Reduce機制(在Spike的答案中進行了描述)。
對於蜂巢,我會特別提到Map joins。 可以告訴hive僅Map聯接的表的最大大小是多少。 當其中一個表足夠小時,Hive將使用分布式緩存機制將此表復制到所有節點,並確保所有聯接過程都在數據本地進行。 對該過程有很好的解釋: http : //www.facebook.com/note.php?note_id=470667928919
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.