Spark实战记录

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~PipelineExample winutils.exe java.lang.NullPointException~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

在运行Spark ML管道 PipelineExample 样例代码的时候报错,这个错误之前我也遇到过,知道是本地环境未配置,当时我以为需要安装Hadoop、Spark的安装程序什么的就嫌麻烦跳过了,现在不得不解决的时候发现还是很简单的。只需要下载spark-2.1.0-bin-hadoop2.7.tgz、hadoop-2.7.3.tar.gz、winutils.exe三个文件就行,无需安装。

具体是分别将Spark、Hadoop的tgz文件解压在全英文的文件夹内,是否在同一个文件夹内没有关系,然后将winutils.exe放入hadoop-2.7.3\bin目录下。

可以配置系统环境变量,在Path<windows>中加入HADOOP_HOME、 SPARK_HOME、SPARK_CLASSPATH

不配置也没有关系,在代码中加入下列代码即可!

System.setProperty("hadoop.home.dir", "F:\\Setup\\BigData\\hadoopSetUp\\hadoop-2.7.3")

 

java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Case Class~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

本文原文出处: http://blog.csdn.net/bluishglc/article/details/50914001 严禁任何形式的转载,否则将委托CSDN官方维护权益!

Case Class的特别之处在于:

    1. 编译器会为Case Class自动生成以下方法:  
      • equals & hashCode
      • toString
      • copy
    2. 编译器会为Case Class自动生成伴生对象
    3. 编译器会为伴生对象自动生成以下方法

      • apply
      • unapply 
        这意味着你可以不必使用new关键字来实例化一个case class.
    4. case class的类参数在不指定val/var修饰时,会自动编译为val,即对外只读,如果需要case class的字段外部可写,可以显式地指定var关键字

以上就是Case Class的全部特征,简单地总结起来就是:让编译器帮忙自动生成常用方法!反过来,如果你手动实现了对应的方法和伴生对象,那么就等同于生成了Case Class. 而实际使用过程中,手动实现这些方法是很繁琐和无趣的,使用Case Class就是最好的选择。当你希望设计一个类只是用来作为数据载体时, 
Case Class是一个很好的选择,实际上,这正是DTO(或者也有叫作VO)做的事情,所以说Case Class的一个典型应用场景就是DTO。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值