通过三台vituralBox虚拟机,hadoop完整分布式集群已经在CentOS64位系统上部署。可以运行WordCount示例。
接下来准备在map和reduce函数中调用C的动态库的方法,因为不想暴露源码,不想在Linux系统上重新再编译。因此只有windows下的.dll动态库。
问mapreduce函数中是否能调用.dll的方法?
我大概查了下网上资料,Java用JNI方式,用到的动态库是和平台相关的,windows下用dll,Linux下用.so,还要考虑系统是32位还是64位。
因为我对java调用C动态库不了解。之前只接触过C#调用C++动态库,记得只需要一个外部访问接口就行,不过这应该是vc++和C#都使用.net framework作为平台,所以方便。
想问hadoop中的数据处理会用到的C动态库中写 好的复杂算法,直接在Linux系统上能调用.dll文件中的方法吗?
如果不行的话,有没有其他的方法,比如本地WebService中间件,因为Hadoop处理数据是本地化的,有人提出本地建WebService。
然后mapreduce函数中调用.so动态库,有没有例子。因为对C实在了解太少,希望能耐心解答。
|
|