开发者学堂课程【数据湖 JindoFS + OSS 实操干货36讲:Spark 对 OSS 上的 Parquet 数据进行查询加速】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/833/detail/13979
Spark 对 OSS 上的Parquet 数据进行查询加速
内容介绍
一、JindoFS 计算加速介绍
二、Spark 使用 JindoFS 计算加速
三、演示
一、JindoFS 计算加速介绍
(1)背景介绍
当前数据湖市场规模正在飞速增长,随着数据规模的增长,基于高性能的数据湖分析场景也在逐渐增加。
当前很多数据湖架构基于对象存储,相对于本地存储,其性能受到网络带宽和负载机器的影响,存在性能瓶颈和波动,同时因为远端读取 OSS 单次 IO 比较慢在列存等一些随机读比较多的场景,性能差距尤其明显(无法预读)。在此背景下,稳定且高性能的数据读取方案已经迫在眉睫。
(2)JindoFS 计算加速
JindoFS 通过 Native Engine,能够加速存储在 JindoFS/OSS 上面的 ORC/Parquet文件,配合 filter pushdown, 在 Spark/Hive/Presto 上明显的提升查询速度。
(3)TPCDS 5T测试
➢TPCDS 5T 规模的 ISpark 测试,使用 JindoFS 计算加速方案,平均 query 查询性能整体上较S park + parquet 的方案提升22.9%(GeoMean).总时间缩短从8158秒缩短到7309秒,下降12%。详细报告参考文章结尾链接。
➢与 q96查询对比
下推 filter 之后读取相同数据量时间缩短一倍。
二、Spark 使用 JindoFS 计算加速
(1)前提
已创建EMR-3.35.0及后续版本或 EMR-4.9.0及后续版本,且Parquet文件已存放至JindoFS或OSS
(2)Spark 使用 JindoFS 计算加速
添加配置
spark.sql.extensions=com.aliyun.em .sql.JindoTableExtension
三、演示
1. Spark 2.4 使用 JindoFS 计算加速
2. Spark 2.4 任务界面查看计算加速相关信息
3.相关资源
(1)计算加速使用文档:
https://help.aliyun.com/document detail/213329.html?spm=a2c4g.11186623.6.1123.5d04196bvr9MzP
(2)tpcds 5t 查询性能报告
https://qithub.com/aliyun/ alibabacloud-jindodata/blob/master/docs/comparisons/jindotable_native _vs _spark parquet.md