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

35互联做网站好吗网络媒体推广报价

35互联做网站好吗,网络媒体推广报价,线上课程怎么做,济南网站推广¥做下拉去118cr在Spark 中,cache() 是用于优化计算性能的核心方法之一,但它有许多细节需要深入理解。以下是关于 cache() 的详细技术解析: 1. cache() 的本质 简化的 persist():cache() 是 persist(StorageLevel.MEMORY_ONLY) 的快捷方式&#x…

在Spark 中,cache() 是用于优化计算性能的核心方法之一,但它有许多细节需要深入理解。以下是关于 cache() 的详细技术解析:


1. cache() 的本质

  • 简化的 persist()cache() 是 persist(StorageLevel.MEMORY_ONLY) 的快捷方式,将数据以反序列化对象的形式存储在内存中。

  • 惰性操作:调用 cache() 后,数据不会立即缓存,只有在首次触发行动操作(如 count()show()collect())时才会执行缓存。

  • 存储级别:默认使用 MEMORY_ONLY,若内存不足,未缓存的分区会在后续需要时重新计算。


2. 底层工作原理

缓存过程
  1. 血缘(Lineage)记录:Spark 记录 RDD/DataFrame 的血缘关系(即生成该数据的操作步骤)。

  2. 首次计算:当首次触发行动操作时,Spark 根据血缘执行计算,并将结果按分区缓存在内存中。

  3. 后续复用:后续操作直接读取缓存数据,跳过血缘中的计算步骤。

缓存失效
  • 手动释放:调用 unpersist() 立即释放缓存。

  • 自动清理:Spark 根据 LRU(最近最少使用)策略自动清理缓存,当内存不足时,最早未使用的缓存分区会被移除。


3. 存储级别的关键细节

cache() 对应的 MEMORY_ONLY 存储级别特性:

特性说明
序列化数据以反序列化 Java 对象形式存储,读写速度快,但内存占用高。
内存溢出处理内存不足时,直接丢弃未缓存的分区,后续需要时重新计算(不会写入磁盘)。
容错性缓存数据丢失时(如节点故障),Spark 根据血缘重新计算。

4. 何时使用 cache()

适用场景
  • 重复使用:同一数据集被多次用于不同操作(如多阶段机器学习流水线)。

  • 迭代计算:如 PageRank、梯度下降等需要多次遍历数据的算法。

  • 交互式分析:在 Spark Shell 中多次查询同一数据集。

不适用场景
  • 单次使用:数据仅用一次时,缓存反而浪费资源。

  • 内存不足:数据远大于可用内存时,MEMORY_ONLY 会导致频繁重计算,应改用 MEMORY_AND_DISK

代码示例

// 使用 cache 的情况

    val cachedRDD = largeRDD.map(complexTransformation).cache()

   

    // 第一次触发行动算子,计算并统计时间

    val startTime3 = System.currentTimeMillis()

    val result3 = cachedRDD.collect()

    val endTime3 = System.currentTimeMillis()

    println(s"使用 cache 第一次计算耗时: ${endTime3 - startTime3} 毫秒")

    // 第二次触发行动算子,计算并统计时间

    val startTime4 = System.currentTimeMillis()

    val result4 = cachedRDD.collect()

    val endTime4 = System.currentTimeMillis()

    println(s"使用 cache 第二次计算耗时: ${endTime4 - startTime4} 毫秒")

    println(s"spark.local.dir 的值: ${conf.get("spark.local.dir")}")

    sc.stop()

http://www.dtcms.com/wzjs/285234.html

相关文章:

  • wordpress html5 音乐播放器兰州seo外包公司
  • 网站建设课程体会品牌广告图片
  • 网页设计与制作课程评价seo公司彼亿营销
  • 做网站要求友情链接交易网站源码
  • 衡水制作网站留电话的广告网站
  • 网站建设建站世界大学排名
  • 网站系统运行环境怎么从网上找客户
  • 广州住房和城乡建设厅网站首页如何推广一个平台
  • 怎么用切片和dw做网站网络营销的seo是做什么的
  • 武冈网站建设百度整站优化
  • 政府机关网站制作太原网站建设制作
  • 网站推广自己可以做吗搜索引擎排名优化包括哪些方面
  • 网站建设 说明百度竞价排名是什么
  • wordpress分类插件seo外链优化
  • 完善旅游网站建设武汉大学人民医院院长
  • 网站建设的规模设想免费网上申请注册
  • b2c电子商务网站建设seo职位要求
  • 网站建设业务拓展思路百度竞价推广方案范文
  • 手机网站 qq代码新的网站怎么推广
  • 上海网络推广营销策划方案河南纯手工seo
  • 网站建设 作用锦绣大地seo官网
  • 门户网站建设工作方案品牌营销的四大策略
  • 辽阳县住房和城乡建设局网站百度推广咨询
  • 建站素材网站模板河南关键词排名顾问
  • apk开发小熊猫seo博客
  • 黄冈公司做网站今日实时热点新闻事件
  • 做语文课文网站的好处百度推广电话客服24小时
  • Java网站开发工程师招聘企业如何做网络推广
  • 做经销找厂家好的网站营销培训内容有哪些
  • 搞网站开发的程序员属于哪一类西地那非片吃了能延时多久