Har*_*rak 10
您可能想要查看webhdfs库.它fs为WebHDFS REST API调用提供了简洁明了(类似于模块API)的接口.
写入远程文件:
var WebHDFS = require('webhdfs');
var hdfs = WebHDFS.createClient();
var localFileStream = fs.createReadStream('/path/to/local/file');
var remoteFileStream = hdfs.createWriteStream('/path/to/remote/file');
localFileStream.pipe(remoteFileStream);
remoteFileStream.on('error', function onError (err) {
// Do something with the error
});
remoteFileStream.on('finish', function onFinish () {
// Upload is done
});
Run Code Online (Sandbox Code Playgroud)
从远程文件中读取:
var WebHDFS = require('webhdfs');
var hdfs = WebHDFS.createClient();
var remoteFileStream = hdfs.createReadStream('/path/to/remote/file');
remoteFileStream.on('error', function onError (err) {
// Do something with the error
});
remoteFileStream.on('data', function onChunk (chunk) {
// Do something with the data chunk
});
remoteFileStream.on('finish', function onFinish () {
// Upload is done
});
Run Code Online (Sandbox Code Playgroud)
小智 5
不是好消息!!!
不要使用 node-hdfs。尽管它看起来很有希望,但现在已经过时了两年。我试图编译它,但它与当前 libhdfs 的符号不匹配。如果你想使用类似的东西,你必须制作自己的 nodejs 绑定。
您可以使用 node-webhdfs,但恕我直言,这没有太大优势。最好使用 http nodejs lib 来提出您自己的请求。这里最难的部分是尝试保持 nodejs 非常异步的特性,因为您可能希望首先创建一个文件夹,然后在成功创建后创建一个文件,最后写入或附加数据。通过 http 请求的所有内容,您必须发送并等待答案然后继续....
至少 node-webhdfs 可能是一个很好的参考,您可以看看并开始自己的代码。
Br, 法比奥·莫雷拉
| 归档时间: |
|
| 查看次数: |
6036 次 |
| 最近记录: |