《PySpark大数据分析实战》-17.云服务模式Databricks介绍运行作业

📋 博主简介

  • 💖 作者简介:大家好,我是wux_labs。😜
    热衷于各种主流技术,热爱数据科学、机器学习、云计算、人工智能。
    通过了TiDB数据库专员(PCTA)、TiDB数据库专家(PCTP)、TiDB数据库认证SQL开发专家(PCSD)认证。
    通过了微软Azure开发人员、Azure数据工程师、Azure解决方案架构师专家认证。
    对大数据技术栈Hadoop、Hive、Spark、Kafka等有深入研究,对Databricks的使用有丰富的经验。
  • 📝 个人主页:wux_labs,如果您对我还算满意,请关注一下吧~🔥
  • 📝 个人社区:数据科学社区,如果您是数据科学爱好者,一起来交流吧~🔥
  • 🎉 请支持我:欢迎大家 点赞👍+收藏⭐️+吐槽📝,您的支持是我持续创作的动力~🔥

《PySpark大数据分析实战》-17.云服务模式Databricks介绍运行作业

前言

大家好!今天为大家分享的是《PySpark大数据分析实战》第2章第5节的内容:云服务模式Databricks介绍运行作业。

图书在:当当京东机械工业出版社以及各大书店有售!

除了交互式执行代码,还可以采用Job的方式运行Python脚本,修改WordCount.py脚本,去掉sc的创建、修改words.txt的路径,代码如下:

from pyspark import SparkConf, SparkContext

if __name__ == '__main__':
    # 通过SparkContext对象读取文件
    fileRdd = sc.textFile("dbfs:/FileStore/tables/words.txt")
    # 将文件中的每一行按照空格拆分成单词
    wordsRdd = fileRdd.flatMap(lambda line: line.split(" "))
    # 将每一个单词转换为元组,
    wordRdd = wordsRdd.map(lambda x: (x, 1))
    # 根据元组的key分组,将value相加
    resultRdd = wordRdd.reduceByKey(lambda a, b: a + b)
    # 将结果收集到Driver并打印输出
    print(resultRdd.collect())

将修改后的脚本上传到DBFS上或者工作区中,方便后续使用。

创建作业

笔记本编写的代码适合交互式方式执行。要定时运行或者长时间运行Spark应用程序,需要创建作业进行运行。通过左侧菜单栏Workflows菜单打开Jobs列表界面,如图所示。

点击Create Job按钮,打开作业配置界面,如图所示。

在配置界面配置好作业的信息,Type选择Python script,Source选择DBFS,Path指定Python脚本的路径,Cluster选择已创建的集群,点击Create按钮创建作业,如图所示。

创建完成后,可以从Jobs列表中看到创建的作业,如图所示。

运行作业

通过列表中Actions列的运行按钮直接运行作业,作业运行以后,在详情界面可以监控作业的运行情况,如图所示。

在列表中,点击Spark UI链接可以打开Spark Master Web UI界面;点击Logs链接可以打开日志界面查看运行日志及结果,如图所示。

其他类型的作业

Workflows中的作业除了支持笔记本、Python脚本外,还支持多种其他方式,包括JAR、Spark Submit等,如图所示。

Spark Submit方式运行的作业,不支持在已创建的集群上运行,仅支持在运行作业的时候自动创建新集群来运行,运行作业所需要的参数全部通过Parameters文本框以列表的形式指定,如图所示。

结束语

好了,感谢大家的关注,今天就分享到这里了,更多详细内容,请阅读原书或持续关注专栏。

最近更新

  1. TCP协议是安全的吗?

    2023-12-22 19:24:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-22 19:24:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-22 19:24:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-22 19:24:01       20 阅读

热门阅读

  1. 【LeetCode】232. 用栈实现队列(Stack类 & Vector类)

    2023-12-22 19:24:01       42 阅读
  2. 前端websocket实体类,开箱即用

    2023-12-22 19:24:01       40 阅读
  3. uni-app上传音频,图片步骤

    2023-12-22 19:24:01       32 阅读
  4. Spring启用https

    2023-12-22 19:24:01       51 阅读
  5. C语言 空指针导致内存溢出

    2023-12-22 19:24:01       43 阅读
  6. Cookie中的Expiry标示是什么

    2023-12-22 19:24:01       37 阅读
  7. ZooKeeper 集群搭建

    2023-12-22 19:24:01       43 阅读