目前,我的应用程序在Linux上使用C#和MONO与本地文件系统(例如ext2,ext3)进行通信。基本操作是打开文件,从文件写入/读取以及关闭/删除文件。为此,当前我使用C#本机API(如File.Open)对文件进行操作。

我的问题是:如果我在Linux机器上安装Hadoop文件系统。然后
我需要对现有功能进行哪些更改,以便它们与hadoop文件系统通信以对文件进行基本操作。由于Hadoop基础架构基于Java,因此任何C#(在Linux上具有MONO)应用程序将如何使用Hadoop进行基本操作。 C#中用于在文件(如Filer.Open或File.Copy)上运行的基本API是否也可以与Hadoop文件系统一起正常工作?

我在想这样的事情:由于Hadoop公开了C API用于文件操作。因此,编写一个C包装程序,并从中制作一个DLL。然后在C#代码中使用此DLL与Hadoop FileSystems通信。

这看起来正确吗?要么
有人可以建议一些文档或步骤,以便我的C#程序可以打开/读取/写入Hadoop FileSystems中的文件。

谢谢,
阿尼尔

最佳答案

Hadoop支持通过 fuse 安装HDFS:http://wiki.apache.org/hadoop/MountableHDFS这可能是一个比包装本机C库更简单的解决方案,尽管这种方法也可以。

10-01 14:06
查看更多