使用Apache Arrow助力PySpark数据处理

  1. 云栖社区>
  2. Apache Spark中国技术社区>
  3. 博客>
  4. 正文

使用Apache Arrow助力PySpark数据处理

开源大数据EMR 2019-05-30 10:42:38 浏览1287
展开阅读全文

Apache Arrow从Spark 2.3版本开始被引入,通过列式存储,zero copy等技术,JVM 与Python 之间的数据传输效率得到了大量的提升。本文主要介绍一下Apache Arrow以及Spark中的使用方法。

列式存储简介

在介绍Spark中使用Apache Arrow之前,先简单的介绍一下Apache Arrow以及他背后的一些技术背景。
在大数据时代之前,大部分的存储引擎使用的是按行存储的形式,很多早期的系统,如交易系统、ERP系统等每次处理的是增、删、改、查某一个实体的所有信息,按行存储的话能够快速的定位到单个实体并进行处理。如果使用列存储,对某一个实体的不同属性的操作就需要进行多次随机读写,效率将会是非常差的。
随着大数据时代的到来,尤其是数据分析的不断发展,任务不需要一次读取实体的所有属性,而只关心特定的某些

网友评论

登录后评论
0/500
评论
开源大数据EMR
+ 关注
所属云栖号: Apache Spark中国技术社区