大数据开发的就业怎么样
大数据专业就业三大方向 大数据主要的三大就业方向:大数据系统研发类人才、大数据应用开发类人才和大数据分析类人才。 在此三大方向中,各自的基础岗位一般为大数据系统研发
Storm用于处理高速、大型数据流的分布式实时计算系统。为Hadoop添加了可靠的实时数据处理功能 Spark采用了内存计算。从多迭代批处理出发,允许将数据载入内存作反复查询,此外还融合数据仓库,流处理和图形计算等多种计算范式。Spark构建在HDFS上,能与Hadoop很好的结合。它的RDD是一个很大的特点。 Hadoop当前大数据管理标准之一,运用在当前很多商业应用系统。可以轻松地集成结构化、半结构化甚至非结构化数据集。
尽量在写MapReduce程序处理日志时,需要解析JSON配置文件,简化Java程序和处理逻辑。但是Hadoop本身似乎没有内置对JSON文件的解析功能,我们不得不求助于第三方JSON工具包。这里选择json-simple实现我们的功能。
在Hadoop上执行Java程序的命令如下所示:
[hadoop@localhost]$ hadoop jar my-mapreduce.jar
my-mapreduce.jar是我们进行日志处理的MapReduce程序。现在假定我们需要在其中处理JSON格式的配置文件,这里忽略如何在Hadoop集群读取文件的细节,只关注如何使用JSON工具包。下面是简单的HelloWorld程序:
import org.json.simple.JSONObject;
public class HelloWorld{
public static void main(String[] args){
JSONObject obj=new JSONObject();
obj.put(name,foo);
obj.put(num,new Integer(100));
obj.put(balance,new Double(1000.21));
obj.put(is_vip,new Boolean(true));
obj.put(nickname,null);
System.out.print(obj);
}
}
在HelloWorld程序中,只简单修改JSON对象,将其内容打印输出,从而验证解析修改JSON内容的过程。
编译:
由于MapReduce程序需提交到Hadoop集群执行,所以HelloWorld依赖的json-simple包必须存在于集群的classpath路径中,如果集群上没有对应的jar包。执行HelloWorld会出现如下异常:
Exception in thread main java.lang.NoClassDefFoundError: org/json/simple/JSONObject
简单的解决方法是将json-simple包直接和HelloWorld编译结果一起打包,然后即可使用命令hadoop jar HelloWorld.jar执行。需将json-simple的jar包解压再同HelloWorld打包。
编译命令如下所示:
[hadoop@localhost]$ jar tf json-simple-1.1.1.jar
META-INF/MANIFEST.MF
META-INF/
META-INF/maven/
META-INF/maven/com.googlecode.json-simple/
META-INF/maven/com.googlecode.json-simple/json-simple/
META-INF/maven/com.googlecode.json-simple/json-simple/pom.properties
META-INF/maven/com.googlecode.json-simple/json-simple/pom.xml
org/
org/json/
org/json/simple/
org/json/simple/ItemList.class
org/json/simple/JSONArray.class
org/json/simple/JSONAware.class
org/json/simple/JSONObject.class
org/json/simple/JSONStreamAware.class
org/json/simple/JSONValue.class
org/json/simple/parser/
org/json/simple/parser/ContainerFactory.class
org/json/simple/parser/ContentHandler.class
org/json/simple/parser/JSONParser.class
org/json/simple/parser/ParseException.class
org/json/simple/parser/Yylex.class
org/json/simple/parser/Yytoken.class
[hadoop@localhost]$ unzip json-simple-1.1.1.jar
[hadoop@localhost]$ javac -classpath ./json-simple-1.1.1.jar HelloWorld.java
[hadoop@localhost]$ jar -cfe HelloWorld.jar HelloWorld HelloWorld.class ./org/
执行HelloWorld
[hadoop@localhost]$ hadoop jar HelloWorld.jar
{balance:1000.21,num:100,nickname:null,is_vip:true,name:foo}
版权声明:部分内容由互联网用户自发贡献,如有侵权/违规,请联系删除
本平台仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接地址:/dsj/215232.html