spark缓存教程(spark缓存更新)

技术Spark缓存的使用示例分析本篇内容介绍了“Spark缓存的使用示例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成

本文介绍了“火花缓存使用实例分析”的相关知识。很多人在实际的案件操作过程中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

因为注:使用内部数据文件,所以不会在这里公布。看看测试代码和测试结果就知道了。

本次测试在JupyterNotebook的交互环境下进行。如果直接提交作业,结果可能会不一样。

测试步骤

初始化Spark

from py spark . sqlimportsparksessions park=sparksessions \。构建器\。appName('CacheDemo')\。主控形状('迷你图://10 . 206 . 132 . 113:7077 ')\。config ('spark.driver.memory ',' 5g') \。config ('spark.executor.memory ',' 5g') \。config ('spark.cores.max ',20) \。getorcreate()分别读取两个文件进行测试,其中

DS1=spark . read . JSON(OS . path . join(data _ path,' data . 2018-01-04 '))ds2=spark . read . JSON(OS . path . join(data _ path,data . 2018-01-05 '))DS1 . Cache()# Cache * * data frame。注:的两个数据文件分别生成于1月4日和1月5日。尺寸很接近,都是3.1G。

为了防止Spark自己的Cache影响实验,在这里读取两个不同的数据文件。

计算时间:

importtimedefcalc_timing(ds,app _ name): t1=time . time()related=ds . filter(' app _ name=' % s ' ' % app _ name)_ 1 strow=related . first()T2=time . time()print ' cost time : ',T2-t1测试结果:

calc_timing(ds1,' DunZIP ')# cost time :13 . 3130679131 calc _ timing(ds2,' DunZIP ')# cost time :18 . 0472488403 calc _ timing(DS1,' DunZIP ')# cost time 33600 . 86868065796

对于DS1,虽然调用了缓存,但在* * *次执行过滤操作仍然非常慢,因为它没有被真正使用。

第二次使用DS1时,由于缓存的缘故,速度要快得多。

相比之下,DS2的两次行刑时间差别不大。

如果去Spark UI查看每个Job的执行时间,会发现读取数据文件只需要15~20s。

因此可以猜测,Spark的DataFrame读取数据后,即使执行两次相同的操作,所消耗的时间也无法减少,因为Spark默认不会将ds放入内存。

“火花缓存使用示例分析”到此结束。感谢阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/145793.html

(0)

相关推荐

  • hbase shell操作语句有哪些

    技术hbase shell操作语句有哪些这篇文章将为大家详细讲解有关hbase shell操作语句有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。hbase shell操作语句基本

    攻略 2021年12月9日
  • 网站建设中常见的安全漏洞有哪些

    技术网站建设中常见的安全漏洞有哪些这篇文章主要为大家展示了“网站建设中常见的安全漏洞有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“网站建设中常见的安全漏洞有哪些”这篇文

    攻略 2021年11月19日
  • 怎么用花呗转账,花呗中钱可以转到自己银行卡吗

    技术怎么用花呗转账,花呗中钱可以转到自己银行卡吗不可以,因为花呗里的额度属于消费额度,所以花呗既不能提现也不能转账怎么用花呗转账。因此花呗不能借钱,也无法转账到银行卡,如果你需要资金的话,可以去开通借呗。花呗是不能借钱的

    生活 2021年10月24日
  • Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的

    技术Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的这篇文章主要介绍Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的

    攻略 2021年12月11日
  • C#的二次开发及应用举例分析

    技术C#的二次开发及应用举例分析本篇内容主要讲解“C#的二次开发及应用举例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#的二次开发及应用举例分析”吧!二次开发及应用

    攻略 2021年11月26日
  • Linux系统移远EC20 4G模块移植的方法是怎样的

    技术Linux系统移远EC20 4G模块移植的方法是怎样的这篇文章给大家介绍Linux系统移远EC20 4G模块移植的方法是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。硬件平台:迅为i.MX

    攻略 2021年10月22日