大数据学习(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的内存管理机制等等,在我的主页都可以查看。

相关推荐
Green1Leaves19 分钟前
pytorch学习-9.多分类问题
人工智能·pytorch·学习
G皮T29 分钟前
【Elasticsearch】深度分页及其替代方案
大数据·elasticsearch·搜索引擎·scroll·检索·深度分页·search_after
慕y27438 分钟前
Java学习第十五部分——MyBatis
java·学习·mybatis
TDengine (老段)1 小时前
TDengine STMT2 API 使用指南
java·大数据·物联网·时序数据库·iot·tdengine·涛思数据
碣石潇湘无限路1 小时前
【AI篇】当Transformer模型开始学习《孙子兵法》
人工智能·学习
华子w9089258592 小时前
基于 Python Django 和 Spark 的电力能耗数据分析系统设计与实现7000字论文实现
python·spark·django
用户Taobaoapi20142 小时前
母婴用品社媒种草效果量化:淘宝详情API+私域转化追踪案例
大数据·数据挖掘·数据分析
future14123 小时前
C#每日学习日记
java·学习·c#
G皮T3 小时前
【Elasticsearch】检索排序 & 分页
大数据·elasticsearch·搜索引擎·排序·分页·检索·深度分页
碎叶城李白5 小时前
若依学习笔记1-validated
java·笔记·学习·validated