1 支持的语言 Java/SHELL/Python/ruby等各种支持标准输入输出的语言。 2 能够处理的文件大小 它支持比NFS大得多的文件大小。 3 支持的运行平台 l Java 1.5.x 或更高版本(推荐使用 Sun 的实现版本)。 l 支持Linux与Windows操作系统。在 BSD、Mac OS/X 及 OpenSolaris 上也可工作(对于Windows,需要安装 Cygwin)。 4可扩展性描述 Hadoop的性能已经在多达 2000 个节点的机群上得以验证。排序程序的性能在 900 个节点的机群上表现很好(在 900 个节点上对 9TB 数据进行排序消耗 1.8 小时)。在 1400个节点和 2000 个节点的机群上,排序程序的性能依然不错。1400 个节点排序 14TB 数据消耗 2.2 小时。2000个节点排序 20TB 数据消耗 2.5 小时。 5 是否必须使用 Java 编写应用程序 不,有几种办法让非Java代码与Hadoop协同工作。 l HadoopStreaming允许用任何shell命令作为map或reduce函数。 l libhdfs是一种基于JNI的C语言版API(仅用于 HDFS)。 l Hadoop Pipes是一种兼容SWIG的 C++ API (非JNI),用于编写 MapReduce作业。 6 硬件配置 双 CPU 或双核 CPU、4-8GB ECC 内存的机器比较合适。不要使用桌面级计算机,应当选用性价比高的相对高端的商用机,它们的价格通常是产品级应用程序服务器的 1/2 到 2/3,成本通常在 2000-5000 美元。 7 是否支持多客户端同时写入同一个 HDFS 文件 不支持,HDFS 只支持独占的写入。第一个客户端连接到名字节点,打开待写入的文件时,名字节点授予客户端一个租约,以便其写入这个文件。第二个客户端试图以写入方式打开相同的文件时,名字节点发现此文件的租约已经授予了其它客户端,就会拒绝第二个客户端的打开请求。 目前Release版本是0.20.205.0。还不成熟,但是已经集群规模已经可以达到4000个节点,是在Yahoo!实验室中构建的。下面是此集群的相关数据: · 4000 节点 · 2 x quad core Xeons@2.5ghz per 节点 · 4 x 1TB SATA Disk per 节点 · 8G RAM per 节点 · 千兆带宽 per 节点 · 每机架有40个节点 · 每个机架有4千兆以太网上行链路 · Redhat Linux AS4 ( Nahant update 5 ) · Sun Java JDK1.6.0_05 - b13 · 所以整个集群有30000多个CPU,近16PB的磁盘空间 2009年4月-- 赢得每分钟排序,59秒内排序500 GB(在1400个节点上)和173分钟内排序100 TB数据(在3400个节点上)。 (责任编辑:IT) |