美文网首页
Spark性能优化之优化数据结构

Spark性能优化之优化数据结构

作者: 有一束阳光叫温暖 | 来源:发表于2019-02-15 10:58 被阅读0次

一、前言

其实主要就是优化算子函数,内部使用到局部数据,或是算子函数外部数据,都可以进行数据结构优化,优化之后,都会减少其对内存的消耗和占用。

二、如何优化数据结构

  1. 优先使用数组以及字符串,而不是集合类。也就是说优先用array,而不是ArrayList、LinkedList、HashMap等集合。

比如,List<Integer> list = new ArrayList<Integer>(),将其替换为int [] arr = new int[]。这样的话,array既比List少了额外信息的存储开销,还能使用原始数据类型(int)来存储数据,比List中用Integer这种包装类型存储数据,要节省内存的多。

通常企业级应用中的做法是,对HashMap、List这种数据,统一用String拼接成特殊格式的字符应串,
如Map<Integer,Person> persons = new HashMap<Integer,Person>()。可以优化特殊字符串格式:
id:name,address..

  1. 避免使用多层嵌套的对象结构。

比如说 public class Teacher{private List<Student> students = new ArrayList<Student>()},可以用json字符串来存储是一个很好的选择。

3.对于有些能够避免场景,尽量使用int代替String。因为String虽然比ArrayList、HashMap等数据结构高效多了,占用内存量少多了,但是之前分析过,还是有额外信息的消耗。比如之前用String表示id,那么现在完全可以用数字类型的int,来进行替代。这里提醒,在spark应用中,id就不要用常用的uuid了,因为无法转成int,就用自增的int类型的id即可。(sdfsdfdf-234242342-sdfsfsfdfd)

相关文章

  • 目录

    Spark之参数介绍 Spark之性能优化2.1. 官方性能优化指南2.2. Spark性能优化指南——基础篇2....

  • Awesome Extra

    性能优化 性能优化模式 常见性能优化策略的总结 Spark 性能优化指南——基础篇 Spark 性能优化指南——高...

  • Spark性能调优

    《Spark性能优化:开发调优篇》《Spark性能优化:资源调优篇》《Spark性能优化:数据倾斜调优》《Spar...

  • Spark性能优化:数据倾斜调优(转)

    《Spark性能优化:开发调优篇》《Spark性能优化:资源调优篇》《Spark性能优化:数据倾斜调优》《Spar...

  • Spark性能优化:开发调优篇(转)

    《Spark性能优化:开发调优篇》《Spark性能优化:资源调优篇》《Spark性能优化:数据倾斜调优》《Spar...

  • Spark性能优化:资源调优篇(转)

    《Spark性能优化:开发调优篇》《Spark性能优化:资源调优篇》《Spark性能优化:数据倾斜调优》《Spar...

  • spark性能调优

    [Spark性能优化指南——基础篇][Spark性能优化指南——高级篇]

  • Spark 性能优化方案

    Spark 性能优化方案(转自李智慧的Spark性能优化方案): Spark性能测试工具 •Spark性能测试基准...

  • 美团关于大数据技术的文章

    Spark性能优化指南——基础篇Spark性能优化指南——高级篇Spark在美团的实践Kafka文件存储机制那些事...

  • Spark性能优化之优化数据结构

    一、前言 其实主要就是优化算子函数,内部使用到局部数据,或是算子函数外部数据,都可以进行数据结构优化,优化之后,都...

网友评论

      本文标题:Spark性能优化之优化数据结构

      本文链接:https://www.haomeiwen.com/subject/zacpeqtx.html