如何使用Apache Spark(pyspark)和amp;搬运工人

时间:2016-10-25 19:18:12

标签: python apache-spark docker pyspark

我正在构建一个全新的数据科学堆栈,供数据科学家和数据分析师在我们的工作环境中使用。

基本上,我的结构如下:

  • CDH安装在群集中的所有节点上(裸机)
  • Spark& CDH发行中的YARN
  • 具有多个组件的Docker容器映像:Anaconda,Python3,Spark(PySpark),Jupyter Notebook

现在,我最初的目的是在所有工作节点上分发该docker镜像以获取Python依赖关系,并且还包含在此容器内运行Spark作业所需的自定义库(e.x。:xgboost,numpy等)。在Jupyter中进行交互式分析时,我的工作流程如下:

  1. 创建Jupyter Notebook
  2. 初始化SparkContext并将master指向YARN
  3. 使用自定义Python库代码运行Spark作业
  4. 现在,我想知道两件事:

    1. Spark(在容器外运行)如何在所有工作节点上访问我的自定义Python库(Docker容器中的自定义代码)。
    2. 如何分发这些自定义库和其他复杂的依赖项?我知道我们可以使用sc.addPyFile('/ path / to / BoTree.py')或完整的.zip存档这样的函数,但Docker有一个更简单的方法吗?我没有使用Anaconda集群,所以我需要另外一种方法来实现它。
    3. 由于

0 个答案:

没有答案