目录

大数据学习(31)-Spark非常用及重要特性

&&大数据学习&&
🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门

💖如果觉得博主的文章还不错的话,请点赞👍+收藏⭐️+留言📝支持一下博主哦🤞


spark中引入过很多不常用的特性。但是非常重要的特性。

  1. 动态分区裁剪(Dynamic Partition Pruning):在查询过程中,Spark可以根据已经读取的数据动态地裁剪不需要的分区,从而减少数据的扫描量,提高查询效率。这个特性在处理大规模数据集时非常有用,可以大大减少不必要的计算和数据传输。
  2. 自适应执行优化(Adaptive Execution Optimization):Spark可以根据运行时的统计信息动态地调整执行计划,例如将SortMergeJoin转换为BroadcastHashJoin,或者将大任务拆分成小任务等。这些优化可以提高Spark的执行效率和资源利用率。
  3. 数据源API的改进:Spark提供了更丰富的数据源API,支持更多的数据格式和存储系统。这使得Spark可以更容易地与其他系统进行集成,从而扩展其应用范围。
  4. 更好的内存管理:Spark在内存管理方面进行了改进,可以更高效地利用内存资源。例如,Spark引入了Off-Heap内存管理机制,可以避免在JVM堆内存不足时发生OutOfMemoryError错误。
  5. 更好的错误处理和调试支持:Spark提供了更详细的错误信息和调试支持,可以帮助开发人员更快地定位和解决问题。
  6. Kubernetes集成:随着容器技术的流行,Spark也提供了与Kubernetes的集成,使得用户可以在Kubernetes集群上部署和管理Spark应用。
  7. Barrier Execution Mode:这个新特性允许Spark在需要所有任务都完成的情况下进行同步操作,例如MPI风格的算法。
  8. Structured Streaming的改进:Structured Streaming是Spark的流处理模块,它在每个新版本中都会得到改进和优化,以提供更好的性能和易用性。

以上仅仅是部分spark在执行过程中的重要知识,这里只做了简要解释与介绍。深入了解可以看看其他博主的文章。上述的SortMergeJoin转换为BroadcastHashJoin在之前的文章中有提及过,还有hive的内存管理机制等等,在我的主页都可以查看。

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
blackA_26 分钟前
Java学习——day29(并发控制高级工具与设计模式)
java·学习·设计模式
搞程序的心海1 小时前
Flink DataStream API深度解析(Scala版):窗口计算、水位线与状态编程
大数据·flink·scala
面包圈蘸可乐1 小时前
论文学习:《EVlncRNA-net:一种双通道深度学习方法,用于对实验验证的lncRNA进行准确预测》
深度学习·学习·生物信息
沛沛老爹2 小时前
RAG(检索增强生成)学习路径全解析:从入门到精通
学习·入门教程·rag·搜索增强生成·学习路径
I like Code?2 小时前
AntVG2可视化学习与开发笔记-React19(持续更新)
javascript·笔记·学习
Debug_TheWorld3 小时前
Hbase学习
大数据·hbase
阿里云大数据AI技术4 小时前
阿里云 Elasticsearch Serverless 检索增强型8.17版免费邀测!
大数据·elasticsearch
叶子2024224 小时前
使用labelme进行实例分割标注
学习
zhuyixiangyyds4 小时前
day28图像处理OpenCV
图像处理·笔记·学习