Advertisement

Spark内存存储与磁盘存储

阅读量:

文章目录

  • 简介
    • 内存管理机制MemoryStore

    • 数据编码方式putBytes

      • 使用迭代器作为值进行不同形式的编码(如数值或字节形式)
      • 通过bytes获取内存内容的方式getBytes和通过values获取的方式getValues
    • 磁盘存储DiskStore

      • NIO读取方法getBytes
      • NIO写入方法putBytes & put

简介

在BlockManager中定义的实际存储机制主要由MemoryStore与DiskStore两个组件负责。根据Block所指定的需求层次StorageLevel决定了数据是存放在内存还是磁盘上,并且是以序列化方式还是非序列化方式进行数据保存。这些组件在系统启动时就已经被初始化并开始运行。

复制代码
    // BlockManager.scala
    // Actual storage of where blocks are kept
    private[spark] val memoryStore =
      new MemoryStore(conf, blockInfoManager, serializerManager, memoryManager, this)
    private[spark] val diskStor

全部评论 (0)

还没有任何评论哟~