IT技术博客大学习 共学习 共进步

Hadoop++:Hadoop的局部性能改良

风轻扬 2011-12-18 21:57:02 累计浏览 2,122 次
Hadoop++是对Hadoop Map Reduce的非入侵式优化,通过自定义Hadoop框架中的split等函数来提升,提升查询和联接性能。 项目由德国Saarland大学Jens Dittrich教授主持。项目主页是 http://infosys.uni-saarland.de/hadoop++.php
Hadoop++对Hadoop的优化主要是Trojan Index、Trojan Join和Trojan Layout三方面。
1、Trojan Index
Trojan index的核心是将数据组织成依次由数据、索引、Header和Footer这四部分构成的split,其中Footer是split的分界符,最后一个Footer一定位于文件末尾。索引构建时由MapReduce完成排序。查询时split函数从文件末尾开始根据Footer信息解析出各个split,itemize函数根据搜索范围条件快速定位满足条件的内容。
以数据库技术类比,Trojan Index类似于索引组织表。
2、Trojan Join
Trojan Join根据联接属性将来自多表的相关记录分到一个split,组织成类似于Trojan Index的结构,itemize出来的记录同时包含了参与联接的双方的属性,这样不再需要在查询时再根据联接属性用map/shuffle/reduce来计算联接。
以数据库技术类比,Trojan Join类似于多表聚簇。
3、Trojan Layout
类似于PAX,为block内部的数据组织方法,将查询中经常一起访问的属性组合在一起。不同复本用不同的Layout。根据负载计算最优的Layout,类似于背包算法。
以数据库技术类似,Trojan Layout类似于垂直分区,亮点是不同复本用不同的垂直分区。

建议继续学习

  1. Facebook的实时Hadoop系统 (累计阅读 11,404)
  2. hadoop rpc机制 && 将avro引入hadoop rpc机制初探 (累计阅读 6,084)
  3. Hadoop的map/reduce作业输入非UTF-8编码数据的处理原理 (累计阅读 5,547)
  4. 百度是如何使用hadoop的 (累计阅读 5,006)
  5. Hadoop超级安装手册 (累计阅读 4,663)
  6. Hadoop集群间Hadoop方案探讨 (累计阅读 4,444)
  7. 使用hadoop进行大规模数据的全局排序 (累计阅读 4,425)
  8. Hadoop安装端口已经被占用问题的解决方法 (累计阅读 3,884)
  9. Hadoop现有测试框架探幽 (累计阅读 3,805)
  10. 分布式计算平台Hadoop 发展现状乱而稳定的解读 (累计阅读 3,808)