1.map join无reduce操作,所以没有shuffle。这样可以减少大量的网络I/O。(如:大表文件数500、文件250M,小表20M。map join的网络I/O共50020M,Common join的网络I/O共500250M+20M),同时不需要进行map sort和shuffle sort排序。
2.由于Common join的一个reduce包含两张表的数据,所以进行reduce的join先将一张表的数据加载到内存后才能跟另外一张表的数据join,如果加载的是大表需要reduce大量的内存。
3.由于小表转换为HashTable结构,map join在对数据进行join很快,哈希算法的时间为O(1)。
4.map join需要将小表加载DistributeCache是存在Driver内,大表map从Driver拉取小表数据。所以小表数据量不宜过大。
相关文章
- 11-02总结《HBase原理与实践》第七、八章
- 11-02Json初识总结
- 11-02Altera DDR2 IP核学习总结2-----------DDR2 IP核的生成
- 11-02php webshell各种姿势总结
- 11-02文件上传漏洞全面渗透姿势总结
- 11-02文件上传漏洞全面渗透姿势总结
- 11-02EDID、LVDS学习总结
- 11-0208月20日总结
- 11-02常用webshell提权方法总结
- 11-02Hive| ETL清洗& 查询练习