页面树结构

2017-11-09 ApacheCN 开源组织,第二期邀请成员活动,一起走的更远 : http://www.apachecn.org/member/209.html


MachineLearning 优酷地址 : http://i.youku.com/apachecn

转至元数据结尾
转至元数据起始

Spark 与 Hadoop 集成

这部分介绍了如何从 Spark 中去访问各种各样的 Hadoop 生态系组件。

从 Spark 中访问 HBase

您可以使用 Spark 来处理到 HBase 中的数据。请看 使用 Spark 导入数据到 HBase

您也可以从 Spark 到 HBase 使用 Spark 来结合 Apache Kafka 到 stream 的数据。请看 使用 Spark 和 Kafka 导入数据到 HBase

提交 Spark 应用程序的主机,或者运行 spark-shell 的主机,或者运行 pyspark 的主机必须有一个 HBase gateway 角色 定义在 Cloudera Manager 中并且 客户端配置 被部署了。

Kerberized 环境中的局限性

在 Kerberized 群集中 Spark 应用程序有下列的局限性 : 

  • 应用程序必须每 7 天重启一次(ps : 坑爹呀!←_←)。
  • 如果群集已经启用了 HA,在您的命令行中必须指定 keytab 和 principal 参数(与使用 kinit 相反)。例如 : 

    spark-shell --jars MySparkHbaseApp.jar --principal ME@DOMAIN.COM --keytab /path/to/local/keytab ...
    spark-submit --class com.example.SparkHbaseApp --principal ME@DOMAIN.COM --keytab /path/to/local/keytab
    SparkHBaseApp.jar [ application parameters....]"

    更多的信息请看 Spark 身份认证

从 Spark 中访问 Hive

提交 Spark 应用程序的主机,或者运行 spark-shell 的主机,或者运行 pyspark 的主机必须有一个 Hive gateway 角色 定义在 Cloudera Manager 中并且 客户端配置 被部署了。

从 Oozie 中运行 Spark Jobs

对于 CDH 5.4 和更高的版本您可以从 Oozie 中使用  Spark action 调用 Spark Job。更多关于 Spark action 的信息请看 Oozie Spark Action 扩展

在 CDH 5.4 中,当运行  action 时去启动 动态分配,在 Oozie workflow 中指定以下配置 : 

<spark-opts>--conf spark.dynamicAllocation.enabled=true
--conf spark.shuffle.service.enabled=true
--conf spark.dynamicAllocation.minExecutors=1
</spark-opts>

如果您已经在 Cloudera Manager 中启用了 shuffle 服务,您不需要去指定 spark.shuffle.service.enabled。