目前,我的应用程序在 Linux 上使用 C# 和 MONO 与本地文件系统(例如 ext2、ext3)进行通信。基本操作是打开文件、写入/读取文件和关闭/删除文件。为此,目前我使用 C# 原生 API(如 File.Open)对文件进行操作。
我的问题是:如果我在我的 Linux 机器上安装 Hadoop 文件系统。然后我需要对我现有的函数做些什么改变,以便它们与 hadoop 文件系统通信以对文件执行基本操作。由于 Hadoop 基础架构基于 Java,任何 C#(在 linux 上使用 MONO)应用程序将如何使用 Hadoop 进行基本操作。C# 中用于操作文件的基本 API(likr File.Open 或 File.Copy)是否也适用于 Hadoop 文件系统?
我在想这样的事情:因为 Hadoop 公开了用于文件操作的 C API。因此,编写一个 C 包装器并用它制作一个 DLL。然后在 C# 代码中使用此 DLL 与 Hadoop FileSystems 进行通信。
这看起来对吗?或者有人可以建议一些文档或步骤,以便我的 c# 程序可以从 Hadoop FileSystems 打开/读取/写入文件。
谢谢,阿尼尔。