问题描述
- 关于Hadoop WebHDFS 下载文件速度慢的问题
-
目前正在windows+.net下开发一个Hadoop HDFS读写文件的小测试程序。用的WebHDFS
http接口。上传文件速度比较快,但是下载非常慢。跟踪代码发现主要是在读取网络流时太慢:
Stream respStream = wrp.GetResponseStream();
Stream fileStream = File.Create(localFile);
int bufferSize = 1024 * 1024;
int byteNum;
byte[] downloadByte = new byte[bufferSize];
while (true)
{
byteNum = repStream.Read(downloadByte, 0, bufferSize);
if (byteNum == 0)
{
break;
}
fileStream.Write(downloadByte, 0, byteNum);
}
我虽然设置了bufferSize但是每次读取时最多不超过8192字节。我想请问一下怎样才能提高读取的字节数?
解决方案
http://www.zhihu.com/question/21588815
解决方案二:
既然最多不超过8192,那么你bufferSize就不要开这么大,浪费空间。这样可以提高一些。
时间: 2024-11-10 00:21:20