~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~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。

Spark实战记录的更多相关文章

  1. Spark实战1

    1. RDD-(Resilient Distributed Dataset)弹性分布式数据集      Spark以RDD为核心概念开发的,它的运行也是以RDD为中心.有两种RDD:第一种是并行Col ...

  2. celery+RabbitMQ 实战记录2—工程化使用

    上篇文章中,已经介绍了celery和RabbitMQ的安装以及基本用法. 本文将从工程的角度介绍如何使用celery. 1.配置和启动RabbitMQ 请参考celery+RabbitMQ实战记录. ...

  3. 升级 Elasticsearch 集群数量实战记录

    搜索引擎 升级 Elasticsearch 集群数量实战记录 现在线上有一个elasticsearch集群搜索服务有三台elasticsearch实例(es1.es2.es3),打算将其升级为5台(增 ...

  4. Spark GraphX宝刀出鞘,图文并茂研习图计算秘笈与熟练的掌握Scala语言【大数据Spark实战高手之路】

    Spark GraphX宝刀出鞘,图文并茂研习图计算秘笈 大数据的概念与应用,正随着智能手机.平板电脑的快速流行而日渐普及,大数据中图的并行化处理一直是一个非常热门的话题.图计算正在被广泛地应用于社交 ...

  5. re实战记录

    re实战记录 针对网页中的空格符 一般使用的.,但是它不能匹配\n,所以使用[\s\S]或者[\d\D]匹配所有字符 import re l1=r''' <div class="thu ...

  6. Rails工程实战记录

    项目git:https://github.com/yixiaoyang/ruby 为熟悉Rails的基本特性创建的工程,本博文仅作更新记录. (1)2013.10.1-2013.10.5 Ruby基本 ...

  7. Spark实战--搭建我们的Spark分布式架构

    Spark的分布式架构 如我们所知,spark之所以强大,除了强大的数据处理功能,另一个优势就在于良好的分布式架构.举一个例子在Spark实战--寻找5亿次访问中,访问次数最多的人中,我用四个spar ...

  8. Spark实战电影点评系统(一)

    一.通过RDD实战电影点评系统 日常的数据来源有很多渠道,如网络爬虫.网页埋点.系统日志等.下面的案例中使用的是用户观看电影和点评电影的行为数据,数据来源于网络上的公开数据,共有3个数据文件:uers ...

  9. sikuli实战记录

    最近,为了解放运营人力,需要对某国企的系统进行自动化操作.该系统使用的是https,需要加载证书,而且非得用IE才行,firefox无法正常的加载证书.而selenium启动的IE是纯净的,不会加载任 ...

随机推荐

  1. [No0000165]SQL 优化

    SELECT 标识选择哪些列FROM 标示从哪个表中选择WHERE 过滤条件GROUP BY 按字段数据分组HAVING 字句过滤分组结果集ORDER BY 序按字段排序 ASC( 默认) 序升序 D ...

  2. 自动化运维工具-pdsh工具安装配置及简单使用讲解

    1.先决条件: 安装pssh工具的主机针对远程主机需要配置免秘钥认证: ssh-keygen -t rsa ssh-copy-id [remotehost] 2.下载pssh工具安装介质: https ...

  3. C语言中gets(), scanf()区别

    C语言中gets(), scanf()区别 相同点: gets()和 scanf() 1.函数都可用于输入字符串 2.都在stdio.h头文件中定义. 3.字符串接受字符结束后自动加'\0' 不同点: ...

  4. 看数据库的文件大小 MySQL Binlog日志的生成和清理规则

    小结: 1.避免并行大大事务对磁盘.内存的消耗: MySQL数据文件导致实例空间满的解决办法_空间/内存_常见问题_云数据库 RDS 版-阿里云 https://help.aliyun.com/kno ...

  5. MachineLearning:

    https://github.com/pennyliang/MachineLearning-C---code https://zhuanlan.zhihu.com/p/22794772 http:// ...

  6. 注解之@PathVariable

    @PathVariable只支持一个属性value,类型是为String,代表绑定的属性名称.默认不传递时,绑定为同名的形参. 用来便捷地提取URL中的动态参数.其英文注释如下: Annotation ...

  7. fopen 的使用

    1, fopen() 的使用,在linux环境下,我们可以使用man fopen查看使用说明: #include <stdio.h> FILE *fopen(const char *pat ...

  8. 漫画:什么是HashMap

    漫画:什么是HashMap 参考: HashMap源码解析 美团技术团队:Java 8系列之重新认识HashMap

  9. 8-GPIO复用

    8-GPIO引脚复用与重映射 0.通用GPIO 在复位期间及复位刚刚完成后,复用功能尚未激活,I/O 端口被配置为输入浮空模式. 复位后,调试引脚处于复用功能上拉/下拉状态: ● PA15:JTDI ...

  10. 【JMeter】前置处理器

     BeanShell PreProcessor  使用BeanShell在请求进行之前进行操作.语法使用与BeanShell Sampler是一样的.但可使用的内置变量稍有不同    JDBC Pre ...