一、Hadoop环境配置概述

三台虚拟机,操作系统为:Ubuntu 16.04。

Hadoop版本:2.7.2

NameNode:192.168.72.132

DataNode:192.168.72.135,192.168.72.136

注:具配置过程,不具备介绍了,网上很多。

二、eclipse(JAVA)环境配置概述

操作系统:Windows 10

eclipse版本:Mars.2 Release (4.5.2)

1.hadoop-eclipse-plugin-2.7.2.jar组件放plugins目录 下,具体如何配置去网上找。

2.配置HADOOP_HOME环境变量:E:\hadoop-2.7.2,配置PATH环境变量,增加:%HADOOP_HOME%\bin

3.下载:winutils.exe和Hadoop.dll两个文件,放到E:\hadoop-2.7.2\bin下;Hadoop.dll放到Windows\System32下载。

4.引用hadoop组件包,为了正确性,share\hadoop\common、share\hadoop\hdfs、share\hadoop\mapreduce、share\hadoop\yarn,以及每个目录下的lib中的jar包全部引用。

5.新建项目wordcount,网上一大堆代码,直接复制就行了。

6.支行效果:

三、VS2015(C#)环境配置概述

1.增加组件引用,分别Install-Package:Microsoft.Azure.Management.HDInsight、Microsoft.Azure.Management.HDInsight.Job 、Microsoft.Hadoop.WebClient、Microsoft.Hadoop.Hive、Microsoft.Hadoop.MapReduce等5个组件,可能会报WebClient和MapReduce引用的版本号不对,删除WebClient组件引用,重新在MapReduce下引用WebClient组件。

2.配置C:\Windows\System32\drivers\etc\hosts文件,192.168.72.132 wxzz-pc、192.168.72.135 wxzz-pc1、192.168.72.136 wxzz-pc2,否则会报无法连接DataNode。

3.至此myCluster.StorageSystem.LsFiles和myCluster.StorageSystem.Exists是可以正常执行,myCluster.StorageSystem.CopyFromLocal和myCluster.StorageSystem.CopyToLocal一直出现异常。

4.后来在NameNode上安装了Hive,myCluster.StorageSystem.CopyFromLocal和myCluster.StorageSystem.CopyToLocal两个操作才可以正常执行。至此,HDFS的操作没有问题了。

5.myCluster.MapReduceJob.Execute执行mapreduce的时候一直会报无法连接“ip:50111”的异常信息

6.后来配置hive中的webhcat,并且起动服务,myCluster.MapReduceJob.Execute执行又报“Response status code does not indicate success: 500 (Server Error).”异常信息,堆栈信息如下:

StackTrace
" 在 System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)\r\n
在 System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)\r\n 在 System.Threading.Tasks.Task.Wait()\r\n
在 Microsoft.Hadoop.WebClient.WebHCatClient.WebHcatMapReduceStreamingExecutor.Execute(Boolean throwOnError)\r\n
在 Microsoft.Hadoop.MapReduce.Execution.Hadoop.StreamingJobExecutorBase.ExecuteCore(Type mapper, Type reducer, Type combiner, HadoopJobConfiguration config)\r\n
在 Microsoft.Hadoop.MapReduce.Execution.Hadoop.StreamingJobExecutorBase.Execute(Type mapperType, Type reducerType, Type combinerType, HadoopJobConfiguration config)\r\n
在 Microsoft.Hadoop.MapReduce.Execution.Hadoop.StreamingJobExecutorBase.Execute[TMapper,TReducer](HadoopJobConfiguration config)\r\n
在 Hadoop_Demo.Program.Main(String[] args) 位置 C:\\Users\\WXZZ\\Desktop\\Hadoop_Demo\\Hadoop_Demo\\Program.cs:行号 61" string

找遍网络,这个问题也一直没有解决掉,其中有个回复,请参考:

如果是Hdfs协议 的问题,那么StorageSystem操作不会执行成功。而单单是mapreduce执行失败,我怀疑是否是webhcat配置有问题,或者请求数据协议本身的问题。

四、总结

只是一个小实验,还没有真正的应用的生产环境。一直用C#开发,出现这个问题,无法解决,也是挺无助的。先进行小结,以后慢慢研究。

五、组件和源代码下载

http://pan.baidu.com/s/1i48Ln4D


1.[连载]《C#通讯(串口和网络)框架的设计与实现》

2.[开源]C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍

2.应用SuperIO(SIO)和开源跨平台物联网框架ServerSuperIO(SSIO)构建系统的整体方案

3.C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)

5.ServerSuperIO开源地址:https://github.com/wxzz/ServerSuperIO

物联网&集成技术(.NET) QQ群

C#、JAVA操作Hadoop(HDFS、Map/Reduce)真实过程概述。组件、源码下载。无法解决:Response status code does not indicate success: 500。的更多相关文章

  1. Java操作Hadoop、Map、Reduce合成

    原始数据: Map阶段 1.每次读一行数据, 2.拆分每行数据, 3.每个单词碰到一次写个1 <0, "hello tom"> <10, "hello ...

  2. [Java] SSH框架笔记_框架分析+环境搭建+实例源码下载

    首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. 集成SSH框 ...

  3. 基于java开发jsp+ssm+mysql实现的在线考试系统 源码下载

    实现的关于在线考试的功能有:用户前台:用户注册登录.查看考试信息.进行考试.查看考试成绩.查看历史考试记录.回顾已考试卷.修改密码.修改个人信息等,后台管理功能(脚手架功能不在这里列出),科目专业管理 ...

  4. Python API 操作Hadoop hdfs详解

    1:安装 由于是windows环境(linux其实也一样),只要有pip或者setup_install安装起来都是很方便的 >pip install hdfs 2:Client——创建集群连接 ...

  5. 大文本 通过 hadoop spark map reduce 获取 特征列 的 属性值 计算速度

    大文本 通过 hadoop spark map reduce   获取 特征列  的 属性值  计算速度

  6. C# 条形码操作【源码下载】

    本篇介绍通过C#生成和读取一维码.二维码的操作. 目录 1. 介绍:介绍条形码.条形码的分类以及ZXing.Net类库. 2. 一维码操作:包含对一维码的生成.读取操作. 3. 二维码操作:包含对二维 ...

  7. Java Web开发框架Spring+Hibernate整合效果介绍(附源码)

    最近花了一些时间整合了一个SpringMVC+springAOP+spring security+Hibernate的一套框架,之前只专注于.NET的软件架构设计,并没有接触过Java EE,好在有经 ...

  8. Java Web开发框架Spring+Hibernate整合效果介绍(附源码)(已过期,有更好的)

    最近花了一些时间整合了一个SpringMVC+springAOP+spring security+Hibernate的一套框架,之前只专注于.NET的软件架构设计,并没有接触过Java EE,好在有经 ...

  9. C# ini文件操作【源码下载】

    介绍C#如何对ini文件进行读写操作,C#可以通过调用[kernel32.dll]文件中的 WritePrivateProfileString()和GetPrivateProfileString()函 ...

随机推荐

  1. iOS 数据存储之SQLite3的使用

    SQLite3是iOS内嵌的数据库,SQLite3在存储和检索大量数据方面非常有效,它使得不必将每个对象都加到内存中.还能够对数据进行负责的聚合,与使用对象执行这些操作相比,获得结果的速度更快. SQ ...

  2. iOS之判断手机号码、邮箱格式是否正确

    //判断手机号码格式是否正确 + (BOOL)valiMobile:(NSString *)mobile{     mobile = [mobile stringByReplacingOccurren ...

  3. centos下彻底删除 和重装MYSQL

    1 删除Mysql      yum remove  mysql mysql-server mysql-libs mysql-server;       find / -name mysql 将找到的 ...

  4. Linux模块编程框架

    Linux是单内核系统,可通用计算平台的外围设备是频繁变化的,不可能将所有的(包括将来即将出现的)设备的驱动程序都一次性编译进内核,为了解决这个问题,Linux提出了可加载内核模块(Loadable ...

  5. 我的MYSQL学习心得(七) 查询

    我的MYSQL学习心得(七) 查询 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

  6. MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记

    MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记 说明 以root账户登录Linux操作系统,注意:本文中的所有命令行前面的 #> 表示命令行提示符 ...

  7. .Net中的AOP系列之《单元测试切面》

    返回<.Net中的AOP>系列学习总目录 本篇目录 使用NUnit编写测试 编写和运行NUnit测试 切面的测试策略 Castle DynamicProxy测试 测试一个拦截器 注入依赖 ...

  8. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  9. BCL中String.Join的实现

    在开发中,有时候会遇到需要把一个List对象中的某个字段用一个分隔符拼成一个字符串的情况.比如在SQL语句的in条件中,我们通常需要把List<int>这样的对象转换为“1,2,3”这样的 ...

  10. MongoDB数据实体中的ObjectId序列化成json的一个小坑

    很多时候我们都需要对实体对象进行序列化与反序列化,而ObjectId类型,只能用mongo的驱动以bson格式来序列化,但我们对外的交互,一般是json格式. 有两种解决方案: 1.自己写一个json ...