详情页标题前

腾讯云对象存储透明加速能力

详情页1

概述

透明加速能力用于加速 CosN 访问 COS 的性能。CosN 工具 是基于腾讯云对象存储(Cloud Object Storage,COS)提供的标准的 Hadoop 文件系统实现,可以为 Hadoop、Spark 以及 Tez 等大数据计算框架集成 COS 提供支持。用户可使用实现了 Hadoop 文件系统接口的 CosN 插件,读写存储在 COS 上的数据。对于已经使用 CosN 工具访问 COS 的用户,GooseFS 提供了一种客户端路径映射方式,让用户可以在不修改当前 Hive table 定义的前提下,仍然能够使用 CosN scheme 访问 GooseFS,该特性方便用户在不修改已有表定义的前提下,对 GooseFS 的功能和性能进行对比测试。对于云 HDFS 用户(CHDFS),也可以通过修改配置,实现使用 OFS Scheme 访问 GooseFS 的目的。CosN Schema 和 GooseFS Schema 的映射说明如下:假设 Namespace warehouse 对应的 UFS 路径为 cosn://examplebucket-1250000000/data/warehouse/,则 CosN 到 GooseFS 的路径映射关系如下:

cosn://examplebucket-1250000000/data/warehouse -> /warehouse/cosn://examplebucket-1250000000/data/warehouse/folder/test.txt ->/warehouse/folder/test.txt

GooseFS 到 CosN 的路径映射关系如下:

/warehouse ->cosn://examplebucket-1250000000/data/warehouse//warehouse/ -> cosn://examplebucket-1250000000/data/warehouse//warehouse/folder/test.txt -> cosn://examplebucket-1250000000/data/warehouse/folder/test.txt

CosN Scheme 访问 GooseFS 特性,通过在客户端维持 GooseFS 路径和底层文件系统 CosN 路径之间的映射关系,并将 CosN 路径的请求转换为 GooseFS 的请求。映射关系周期性刷新,您可以通过修改 GooseFS 配置文件 goosefs-site.properties 中的配置项 goosefs.user.client.namespace.refresh.interval 调整刷新间隔,默认值为60s。注意 如果访问的 CosN 路径无法转换为 GooseFS 路径,对应的 Hadoop API 调用会抛出异常。

操作示例

该示例演示了 Hadoop 命令行以及 Hive 中,如何使用 gfs://、 cosn://、ofs:// 三种 Schema 访问 GooseFS。操作流程如下:

1. 准备数据和计算集群

参考 创建存储桶 文档,创建一个测试用途的存储桶。参考 创建文件夹 文档,在存储桶根路径下创建一个名为 ml-100k 的文件夹。Grouplens 下载 ml-100k 数据集,并将文件 u.user 上传到 /ml-100k下。参考 EMR 指引文档,购买一个 EMR 集群并配置 HIVE 组件。

2. 环境配置

i. 将 GooseFS 的客户端 jar 包(goosefs-1.0.0-client.jar)放入 share/hadoop/common/lib/ 目录下:

 cp goosefs-1.0.0-client.jar  hadoop/share/hadoop/common/lib/

注意配置变更和添加 jar 包,需同步到集群上所有节点。ii. 修改 Hadoop 配置文件 etc/hadoop/core-site.xml,指定 GooseFS 的实现类:

  fs.AbstractFileSystem.gfs.impl  com.qcloud.cos.goosefs.hadoop.GooseFileSystem  fs.gfs.impl  com.qcloud.cos.goosefs.hadoop.FileSystem

iii. 执行如下 Hadoop 命令,检查是否能够通过 gfs:// Scheme 访问 GooseFS,其中 为 Master 节点的 IP:

hadoop fs -ls gfs://:9200/

iv. 将 GooseFS 的客户端 jar 包放到 Hive 的 auxlib 目录下,使得 Hive 能加载到 GooseFS Client 包:

cp goosefs-1.0.0-client.jar  hive/auxlib/

v. 执行如下命令,创建 UFS Scheme 为 CosN 的 Namespace,并列出 Namespace。您可将该命令中的 examplebucket-1250000000 替换为您的 COS 存储桶,SecretId 和 SecretKey 替换为您的密钥信息:

goosefs ns create ml-100k cosn://examplebucket-1250000000/ml-100k  --secret fs.cosn.userinfo.secretId=SecretId --secret fs.cosn.userinfo.secretKey=SecretKey--attribute fs.cosn.bucket.region=ap-guangzhou --attribute fs.cosn.credentials.provider=org.apache.hadoop.fs.auth.SimpleCredentialProvidergoosefs ns ls

vi. 执行命令,创建 UFS Scheme 为 OFS 的 Namespace,并列出 Namespace。您可将该命令中的 instance-id 替换为您的 CHDFS 实例,1250000000 替换为您的 APPID:

goosefs ns create ofs-test  ofs://instance-id.chdfs.ap-guangzhou.myqcloud.com/ofs-test --attribute fs.ofs.userinfo.appid=1250000000goosefs ns ls

3. 创建 GooseFS Schema 表和查询数据

通过如下指令执行:

create database goosefs_test;
use goosefs_test;CREATE TABLE u_user_gfs (userid INT,age INT,gender CHAR(1),occupation STRING,zipcode STRING)ROW FORMAT DELIMITEDFIELDS TERMINATED BY '|'STORED AS TEXTFILELOCATION 'gfs://:/ml-100k';
select sum(age) from u_user_gfs;

4. 创建 CosN Schema 表和查询数据

通过如下指令执行:

CREATE TABLE u_user_cosn (userid INT,age INT,gender CHAR(1),occupation STRING,zipcode STRING)ROW FORMAT DELIMITEDFIELDS TERMINATED BY '|'STORED AS TEXTFILELOCATION 'cosn://examplebucket-1250000000/ml-100k';
select sum(age) from u_user_cosn;

5. 修改 CosN 的实现为 GooseFS 的兼容实现

修改 hadoop/etc/hadoop/core-site.xml:

      fs.AbstractFileSystem.cosn.impl     com.qcloud.cos.goosefs.hadoop.CosN     fs.cosn.impl     com.qcloud.cos.goosefs.hadoop.CosNFileSystem

执行 Hadoop 命令,如果路径无法转换为 GooseFS 中的路径,命令的输出中会包含报错信息:

hadoop fs -ls  cosn://examplebucket-1250000000/ml-100k/
Found 1 items-rw-rw-rw- 0 hadoop hadoop 22628 2021-07-02 15:27 cosn://examplebucket-1250000000/ml-100k/u.user
hadoop fs -ls cosn://examplebucket-1250000000/unknow-pathls: Failed to convert ufs path cosn://examplebucket-1250000000/unknow-path to GooseFs path, check if namespace mounted

重新执行 Hive 查询语句:

select sum(age) from u_user_cosn;

6. 创建 OFS Schema 表和查询数据

通过如下命令执行:

CREATE TABLE u_user_ofs (userid INT,age INT,gender CHAR(1),occupation STRING,zipcode STRING)ROW FORMAT DELIMITEDFIELDS TERMINATED BY '|'STORED AS TEXTFILELOCATION 'ofs://instance-id.chdfs.ap-guangzhou.myqcloud.com/ofs-test/';
select sum(age) from u_user_ofs;

7. 修改 OFS 的实现为 GooseFS 的兼容实现

修改 hadoop/etc/hadoop/core-site.xml:

     fs.AbstractFileSystem.ofs.impl     com.qcloud.cos.goosefs.hadoop.CHDFSDelegateFS     fs.ofs.impl     com.qcloud.cos.goosefs.hadoop.CHDFSHadoopFileSystem

执行 Hadoop 命令,如果路径无法转换为 GooseFS 中的路径,则输出结果中会包含报错信息:

hadoop fs -ls  ofs://instance-id.chdfs.ap-guangzhou.myqcloud.com/ofs-test/
Found 1 items-rw-r--r-- 0 hadoop hadoop 22628 2021-07-15 15:56 ofs://instance-id.chdfs.ap-guangzhou.myqcloud.com/ofs-test/u.user
hadoop fs -ls ofs://instance-id.chdfs.ap-guangzhou.myqcloud.com/unknown-pathls: Failed to convert ufs path ofs://instance-id.chdfs.ap-guangzhou.myqcloud.com/unknown-path to GooseFs path, check if namespace mounted

重新执行 Hive 查询语句:

select sum(age) from u_user_ofs;



对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/144867.html

(0)
上一篇 2023年12月9日 上午1:52
下一篇 2023年12月9日 上午1:52
详情页2

相关推荐

  • 腾讯云对象存储媒体截图接口

    简介 本文档提供关于媒体截图接口的 API 概览和 SDK 示例代码。 API 操作名 操作描述 GetSnapshot 查询截图 用于查询媒体文件在某个时间的截图 注意 使用此接口前,请确保已打开官网控制台中数据处理下的媒体处理开关,否则会报错media bucket unbinded, bucket’s host is unavailable。详情请参见…

    腾讯云 2023年12月9日
  • 腾讯云云直播回源模式

    如果您有自建源站和直播源内容,并且需要通过腾讯云进行直播播放,可以通过为云直播播放域名设置源站信息来回源拉取直播内容。配置成功后,您可通过云直播回源拉流并进行直播内容分发。本文档将指导您如何设置源站信息。 注意事项 配置好相关信息后,回源模式设置保存成功后预计在1小时内生效。请耐心等待。回源模式开启后。仅支持播放源站直播流,无法通过推流方式进行直播。开启源站…

    2023年12月9日
  • 腾讯云负载均衡配置 UDP 监听器

    您可以在负载均衡实例上添加一个 UDP 监听器转发来自客户端的 UDP 协议请求。UDP 协议适用于对传输效率要求高、对准确性要求相对较低的场景,如即时通讯、在线视频等。UDP 协议的监听器,后端服务器可直接获取客户端的真实 IP。 限制说明 UDP 监听器的4789端口为系统保留端口,暂不对外开放。 前提条件 您需要 创建负载均衡实例。 操作步骤 步骤一:…

    腾讯云 2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云对象存储COS Ranger 权限体系解决方案

    背景 Hadoop Ranger 权限体系是大数据场景下的权限解决方案。用户使用存算分离后,将数据托管在对象存储(Cloud Object Storage,COS)上。COS 使用的是腾讯云访问管理(Cloud Access Management,CAM)权限体系,无论是用户身份,权限策略等,都与本地 Hadoop Ranger 体系不同。为维持客户的使用习…

    2023年12月9日
  • 腾讯云对象存储CDH 配置 COSN 指引

    简介 CDH(Cloudera’s Distribution, including Apache Hadoop)是业界流行的 Hadoop 发行版本。本文指导如何在 CDH 环境下使用 COSN 存储服务,以实现大数据计算与存储分离,提供灵活及低成本的大数据解决方案。说明 COSN 是 Hadoop-COS 文件系统的简称。COSN 大数据组件支…

    2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。