Spark 访问 OSS 透明缓存加速 | 学习笔记

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: 快速学习Spark 访问 OSS 透明缓存加速。

开发者学堂课程【数据湖 JindoFS + OSS 实操干货36讲Spark 访问 OSS 透明缓存加速】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/833/detail/13972


Spark 访问 OSS 透明缓存加速

 

内容介绍

一、  JindoFS 缓存简介

二、  Spark 访问 OSS 的缓存加速

三、  缓存效果

 

一、  JindoFS 缓存简介

1.   Jindo Namespace Service

2.   Jindo Storage Service

3.   Jindo SDK

 

二、  Spark 访问 OSS 的缓存加速

1.   部署缓存服务

1)   下载最新 Release b2smartdata-x.x.x.tar.gz, 解压并部署到集群所有节点上;

2)   修改配置文件 conf/bigboot.cfg

代码

[bi gboot-Storage]

storage.rpc.port=6101storage.datadirs=/mnt/hskl/bigboot,/mnt/disk2/bigboot,/mnt/disk3/bigboot./mnt/disk4/bigboot

storage.data-dirs.capacities -$27371075584,527371075584,527371075584527371075584

storage.namespace.rpc.address=emr-header-1:8101

storage.watermark.high.ratio=0.4

storage.watermark.low.ratio=0.2

[bigboot-namespace]

namespace.rpc.port=8101

namespace.meta-dir /mnt/disk1/bigboot

3)   修改 sbin/nodes,配置所有 storage service 的节点列表

4)   启动所有服务 /sbin/start-service.sh

5)   详细文档可参考:https//github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindofs_cache _mode_deploy_md

2.   部署 Jindo SDK

1)   安装 jar 包:下载最新的 jar jindofs-sdk-xx.xjar,将 sdk 包安装到 Spark classpath下。

cp jindofs-sdk-$(version)jar $SPARK_HOME/jars/

2)   配置JindoFS 实现类:将 JindoFS 实现类配置到 Hadoop core-site.xml中。

代码



fs.AbstractFileSystem.oss.impl

com.aliyun.emr.fs.oss.0SS



fs.oss.impl欢迎大家来现看直项

com.aliyun.emr.fs.oss.Jindo0ssFileSystem Spark 访问 OSS



 3.   配置客户端连接缓存服务

客户端通过环境变量 B2SDK_CONF_DIR 定位并加载配置文件 bigboot.cfg

1)   设置环境变量指定配置目录

export B2SDK_CONF_DIR=/path/to/sdk/conf

2)   在配置目录下添加bigboot.cfg配置文件

client.storage.rpc.port = 6101

client.namespace.rpc.address=:8101

jfs.cache.data-cache.enable = true

代码

[bigboot-client]

client.storage.rpc.port = 6101

client.namespace.rpc.address= emr-header-1:8101

jfs.cache.data-cache.enable = true

4.   Spark 访问 OSS 透明缓存加速

1)   完成以上配置之后,启动的 Spark 任务即可访问 OSS

2)   任务读取 OSS 上的数据后,会自动缓存到 JindoFS 缓存系统中,后续访问相同的数据就能够命中缓存。

 

三、  缓存效果

l  缓存性能对比

TPC-DS,选择8个具有 IO 相对较高的 SQL 查询进行测试

1.png详见《JindoFS 缓存系统(Cache模式)性能比较》

https://qithub.com/aliyun/alibabacloudjindofs/blob/master/docs/comparisons/jindofs_cache_vs_no_cache.md

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
18天前
|
存储 人工智能 缓存
AI助理直击要害,从繁复中提炼精华——使用CDN加速访问OSS存储的图片
本案例介绍如何利用AI助理快速实现OSS存储的图片接入CDN,以加速图片访问。通过AI助理提炼关键操作步骤,避免在复杂文档中寻找解决方案。主要步骤包括开通CDN、添加加速域名、配置CNAME等。实测显示,接入CDN后图片加载时间显著缩短,验证了加速效果。此方法大幅提高了操作效率,降低了学习成本。
2779 8
|
17天前
|
存储 网络安全 对象存储
缺乏中间证书导致通过HTTPS协议访问OSS异常
【10月更文挑战第4天】缺乏中间证书导致通过HTTPS协议访问OSS异常
41 4
|
3月前
|
分布式计算 DataWorks 数据处理
MaxCompute操作报错合集之UDF访问OSS,配置白名单后出现报错,是什么原因
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
3月前
|
域名解析 Serverless API
函数计算产品使用问题之如何配置自定义域名访问OSS中的内容
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
4月前
|
分布式计算 DataWorks MaxCompute
MaxCompute操作报错合集之在Spark访问OSS时出现证书错误的问题,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
4月前
|
存储 运维 Serverless
Serverless 应用引擎产品使用合集之如何访问相同地域的OSS
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
4月前
|
机器学习/深度学习 分布式计算 API
技术好文:Spark机器学习笔记一
技术好文:Spark机器学习笔记一
35 0
|
17天前
|
存储 缓存 NoSQL
数据的存储--Redis缓存存储(一)
数据的存储--Redis缓存存储(一)
53 1
|
17天前
|
存储 缓存 NoSQL
数据的存储--Redis缓存存储(二)
数据的存储--Redis缓存存储(二)
33 2
数据的存储--Redis缓存存储(二)
|
13天前
|
消息中间件 缓存 NoSQL
Redis 是一个高性能的键值对存储系统,常用于缓存、消息队列和会话管理等场景。
【10月更文挑战第4天】Redis 是一个高性能的键值对存储系统,常用于缓存、消息队列和会话管理等场景。随着数据增长,有时需要将 Redis 数据导出以进行分析、备份或迁移。本文详细介绍几种导出方法:1)使用 Redis 命令与重定向;2)利用 Redis 的 RDB 和 AOF 持久化功能;3)借助第三方工具如 `redis-dump`。每种方法均附有示例代码,帮助你轻松完成数据导出任务。无论数据量大小,总有一款适合你。
50 6

热门文章

最新文章