我正在考虑使用hadoop处理现有Windows 2003服务器上的大型文本文件(大约10个四核处理器,内存为16GB)
问题是:
有没有关于如何在Windows上配置hadoop集群的好教程?
有什么要求?java + cygwin + sshd?还要别的吗?
HDFS,它在Windows上播放得很好吗?
我想在流模式下使用hadoop.在c#中开发我自己的mapper/reducer的任何建议,工具或技巧?
您用什么来提交和监控工作?
谢谢
从Hadoop文档:
支持Win32作为开发平台.分布式操作尚未在Win32上经过良好测试,因此不支持作为生产平台.
我认为这意味着:"你是独立的."
也就是说,根据Hadoop wiki的入门页面,如果您对安装Cygwin和Java Shim并不感到不安,可能会有希望:
也可以使用Java Service Wrapper将Hadoop守护程序作为Windows服务运行(单独下载).这仍然需要安装Cygwin,因为Hadoop需要其df命令.
我想底线是听起来不太可能,但你一直在上游游泳.我现在已经完成了一些Hadoop安装(在Linux上用于生产,Mac用于开发),当在其他平台上如此直接时,我不会打扰Windows.
虽然不是您可能想听到的答案,但我强烈建议将机器重新用作Linux服务器,并在那里运行Hadoop.您将受益于在该平台上执行的教程,经验和测试,并花时间解决业务问题而不是操作问题.
但是,您仍然可以使用C#编写作业.由于Hadoop支持"流式"实现,因此您可以使用任何语言编写作业.使用Mono框架,您应该能够使用在Windows平台上编写的任何.NET代码,并在Linux上运行相同的二进制文件.
您也可以非常轻松地从Windows访问HDFS - 虽然我不建议在Windows上运行Hadoop服务,但您当然可以从Windows平台运行DFS客户端,以便将文件复制到分布式文件系统中.
对于提交和监控工作,我认为你主要依靠自己...我认为还没有为Hadoop工作管理开发任何好的通用系统.