当前位置: 首页 > news >正文

网络营销方案分析/seo项目经理

网络营销方案分析,seo项目经理,全新装修效果图大全,宿迁房产网最新房价默认策略-重新计算:如果RDD依赖关系仅是窄依赖,只需要重新计算一次故障分区就可以了;如果RDD依赖关系既有窄依赖又有宽依赖,需要重新计算故障分区之前的所有的分区数据,仅保留故障分区的数据。 RDD进行持久化&#xf…

默认策略-重新计算:如果RDD依赖关系仅是窄依赖,只需要重新计算一次故障分区就可以了;如果RDD依赖关系既有窄依赖又有宽依赖,需要重新计算故障分区之前的所有的分区数据,仅保留故障分区的数据。

RDD进行持久化:将指定RDD的内容持久化自盘或者内存中;在重复计算或者结果复用时,直接从内存或者磁盘中恢复RDD的数据。

RDD持久化Checkpoint:将某个计算过程数据作为检查点持久化保存到共享的分布式文件系统通常是HDFS。

缓存实现RDD的复用
缓存是一种RDD计算容错的一种手段,程序在RDD数据丢失的时候,可以通过缓存快速计算当前的RDD的值,需要反推出所有的RDD重新计算,因此Spark在需要对某个RDD多次使用的时候,为了提高程序的执行效率,用户可以考虑使用RDD的cache。

测试前需要导入的依赖

 <dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.11</artifactId><version>2.4.4</version>
</dependency>

import org.apache.spark.rdd.RDD
import org.apache.spark.storage.StorageLevel
import org.apache.spark.{SparkConf, SparkContext}object RDDCacheExample {def main(args: Array[String]): Unit = {val conf = new SparkConf().setAppName("word-count").setMaster("local[2]")val sc = new SparkContext(conf)val value: RDD[String] = sc.textFile("file:///Users/gaozhy/Downloads/184/spark-day5/src/main/resources/access.log")//.cache() //将RDD的数据持久化 内存//.persist(StorageLevel.DISK_ONLY).persist(StorageLevel.MEMORY_AND_DISK)value.count() //统计文本行var begin = System.currentTimeMillis()value.count()var end = System.currentTimeMillis()println("耗时:" + (end - begin)) //耗时:30ms//失效缓存value.unpersist()begin = System.currentTimeMillis()value.count()end = System.currentTimeMillis()println("不使用缓存耗时:" + (end - begin)) //150mssc.stop()}
}

除了调用cache之外,Spark提供了更细粒度的RDD缓存方案,用户可以根据集群的内存状态根据合适的内存状态选择合适的缓存策略。用户可以使用persist方法指定缓存级别。

RDD#persist(StorageLevel.MEMORY_ONLY)//设置缓存级别

存储级别中的

_SER     RDD元素序序列化存储
_2       RDD元素备份存储

小结

内存充足,又要求性能,建议使用MEMORY_ONLY > MEMORY_ONLY_SER
内存不太充足,又想提供性能和容错:MEMORY_AND_DISK > MEMORY_AND_DISK _SER (常用方式)
其中_2系统会备份缓存数据。

Check Point 机制

除了使用缓存机制可以有效的保证RDD的故障恢复,但是如果缓存失效还是会在导致系统重新计算RDD的结果,所以对于一些RDD的lineage较长的场景,计算比较耗时,用户可以尝试使用checkpoint机制存储RDD的计算结果,该种机制和缓存最大的不同在于,使用checkpoint之后被checkpoint的RDD数据直接持久化在文件系统中,一般推荐将结果写在hdfs中,这种checpoint并不会自动清空。注意checkpoint在计算的过程中先是对RDD做mark,在任务执行结束后,再对mark的RDD实行checkpoint,也就是要重新计算被Mark之后的rdd的依赖和结果,因此为了避免Mark RDD重复计算,推荐使用策略。


import org.apache.spark.rdd.RDD
import org.apache.spark.storage.StorageLevel
import org.apache.spark.{SparkConf, SparkContext}object RDDCheckpointExample {def main(args: Array[String]): Unit = {val conf = new SparkConf().setAppName("word-count").setMaster("local[2]")val sc = new SparkContext(conf)// 设定一个检查点数据的存放pathsc.setCheckpointDir("hdfs://Spark:9000/184/ck")val value: RDD[String] = sc.textFile("file:///Users/gaozhy/Downloads/184/spark-day5/src/main/resources/access.log")// 将RDD标记为检查点RDDvalue.checkpoint()value.count() //统计文本行var begin = System.currentTimeMillis()value.count()var end = System.currentTimeMillis()println("耗时:" + (end - begin)) //耗时:30ms//失效缓存value.unpersist()begin = System.currentTimeMillis()value.count()end = System.currentTimeMillis()println("不使用缓存耗时:" + (end - begin)) //150mssc.stop()}
}
http://www.jmfq.cn/news/5115493.html

相关文章:

  • 做预售的网站/店铺推广方法
  • 成都网站建设兴田德润实力强/百度服务热线
  • 广告素材网站/昆明网络推广方式有哪些
  • app开发的网站/山东进一步优化
  • 发软文提高网站权重/外贸营销网站制作
  • wordpress 加速版/seo平台是什么
  • 手机网站建设公司联系电话/域名被墙检测
  • wordpress隐藏站点身份/爱站seo综合查询
  • 帮客户做插边球网站/中国新闻网发稿
  • 深圳有哪些网站公司/店铺引流的30种方法
  • 电子商务网站建设实训心得体会/谷歌网站网址
  • 东台网站网站建设/推广普通话手抄报句子
  • 番禺区大石做网站/b2b外贸平台
  • 腾讯云做网站需要报备/泰安百度推广代理
  • 网站排名外包/什么样的人适合做策划
  • 杭州专业的网站制作公司/如何做互联网营销推广
  • 北京顺义住房和城乡建设委员会网站/新闻热点事件
  • 保洁公司网站源码/海外网站
  • 安平做网站/上海网站推广排名公司
  • 内蒙古乌海建设局网站/seo优化专员工作内容
  • 做交友网站多少钱/中国十大小说网站排名
  • by开头的网络黄页平台/seo的优化步骤
  • wordpress函数源码/网站seo排名优化工具
  • 浦东新区办营业执照哪里办/夫唯seo视频教程
  • 芜湖营销型网站建设/爱站网seo培训
  • 广东网站开发软件/常见的线下推广渠道有哪些
  • 做网站怎么赚钱 注册/网络营销教材电子版
  • 网站js文件夹/成都移动seo
  • 新手建站工具/torrent种子猫
  • 18.ppt网站是谁做的/产品经理培训