详情页标题前

腾讯云对象存储CDH 配置 COSN 指引

详情页1

简介

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

组件名称 COSN 大数据组件支持情况 服务组件是否需要重启
Yarn 支持 重启 NodeManager
Hive 支持 重启 HiveServer 和 HiveMetastore
Spark 支持 重启 NodeManager
Sqoop 支持 重启 NodeManager
Presto 支持 重启 HiveServer 和 HiveMetastore 以及 Presto
Flink 支持
Impala 支持
EMR 支持
自建组件 后续支持
HBase 不推荐

版本依赖

本文依赖的组件版本如下:CDH 5.16.1Hadoop 2.6.0

使用方法

存储环境配置

1. 登录 CDH 管理页面。2. 在系统主页,选择配置 > 服务范围 > 高级,进入高级配置代码段页面,如下图所示:

腾讯云对象存储CDH 配置 COSN 指引

3. 在 Cluster-wide Advanced Configuration Snippet(Safety Valve) for core-site.xml 的代码框中,填入 COSN 配置。

<property><name>fs.cosn.userinfo.secretId</name><value>AK***</value></property><property><name>fs.cosn.userinfo.secretKey</name><value></value></property><property><name>fs.cosn.impl</name><value>org.apache.hadoop.fs.CosFileSystem</value></property><property><name>fs.AbstractFileSystem.cosn.impl</name><value>org.apache.hadoop.fs.CosN</value></property><property><name>fs.cosn.bucket.region</name><value>ap-shanghai</value></property>

以下为必选的 COSN 配置项(需添加到 core-site.xml 中),COSN 其他配置可参见 Hadoop 工具 文档

COSN 配置项 含义
fs.cosn.userinfo.secretId AKxxxx 账户的 API 密钥信息
fs.cosn.userinfo.secretKey Wpxxxx 账户的 API 密钥信息
fs.cosn.bucket.region ap-shanghai 用户存储桶所在地域
fs.cosn.impl org.apache.hadoop.fs.CosFileSystem cosn 对 FileSystem 的实现类,固定为 org.apache.hadoop.fs.CosFileSystem
fs.AbstractFileSystem.cosn.impl org.apache.hadoop.fs.CosN cosn 对 AbstractFileSystem 的实现类,固定为 org.apache.hadoop.fs.CosN

4. 对 HDFS 服务进行操作,单击部署客户端配置,此时以上 core-site.xml 配置会更新到集群里的机器上。5. 将 COSN 最新的 SDK 包,放置到 CDH HDFS 服务的 jar 包路径下,请根据实际值进行替换,示例如下:

cp hadoop-cos-2.7.3-shaded.jar /opt/cloudera/parcels/CDH-5.16.1-1.cdh5.16.1.p0.3/lib/hadoop-hdfs/

注意 在集群中的每台机器都需要在相同的位置放置 SDK 包。

数据迁移

使用 Hadoop Distcp 工具将 CDH HDFS 数据迁移到 COSN,详情请参见 Hadoop 文件系统与 COS 之间的数据迁移

大数据套件使用 COSN

1. MapReduce

操作步骤(1)按照 数据迁移 章节,配置好 HDFS 的相关配置,并将 COSN 的 SDK jar 包,放置到 HDFS 相应的目录。
(2)在 CDH 系统主页,找到 YARN,重启 NodeManager 服务(TeraGen 命令可以不用重启,但是 TeraSort 由于业务内部逻辑,需要重启 NodeManger,建议都统一重启 NodeManager 服务)。
示例下面以 Hadoop 标准测试中的 TeraGen 和 TeraSort 为例:

hadoop jar ./hadoop-mapreduce-examples-2.7.3.jar teragen  -Dmapred.job.maps=500  -Dfs.cosn.upload.buffer=mapped_disk -Dfs.cosn.upload.buffer.size=-1 1099 cosn://examplebucket-1250000000/terasortv1/1k-input
hadoop jar ./hadoop-mapreduce-examples-2.7.3.jar terasort -Dmapred.max.split.size=134217728 -Dmapred.min.split.size=134217728 -Dfs.cosn.read.ahead.block.size=4194304 -Dfs.cosn.read.ahead.queue.size=32 cosn://examplebucket-1250000000/terasortv1/1k-input cosn://examplebucket-1250000000/terasortv1/1k-output

说明cosn:// schema 后面请替换为用户大数据业务的存储桶路径。

2. Hive

2.1 MR 引擎

操作步骤(1)按照 数据迁移 章节,配置好 HDFS 的相关配置,并且将 COSN 的 SDK jar 包,放置到 HDFS 相应的目录。
(2)在 CDH 主页面,找到 HIVE 服务, 重启 Hiveserver2 及 HiverMetastore 角色。
示例某用户的真实业务查询,例如执行 Hive 命令行,创建一个 Location,作为在 CHDFS 上的分区表:

CREATE TABLE `report.report_o2o_pid_credit_detail_grant_daily`(  `cal_dt` string,  `change_time` string,  `merchant_id` bigint,  `store_id` bigint,  `store_name` string,  `wid` string,  `member_id` bigint,  `meber_card` string,  `nickname` string,  `name` string,  `gender` string,  `birthday` string,  `city` string,  `mobile` string,  `credit_grant` bigint,  `change_reason` string,  `available_point` bigint,  `date_time` string,  `channel_type` bigint,  `point_flow_id` bigint)PARTITIONED BY (  `topicdate` string)ROW FORMAT SERDE  'org.apache.hadoop.hive.ql.io.orc.OrcSerde'STORED AS INPUTFORMAT  'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'    OUTPUTFORMAT  'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'LOCATION  'cosn://examplebucket-1250000000/user/hive/warehouse/report.db/report_o2o_pid_credit_detail_grant_daily'TBLPROPERTIES (  'last_modified_by'='work',  'last_modified_time'='1589310646',  'transient_lastDdlTime'='1589310646')

执行 sql 查询:

select count(1) from report.report_o2o_pid_credit_detail_grant_daily;

观察结果如下:

腾讯云对象存储CDH 配置 COSN 指引



2.2 Tez 引擎

Tez 引擎需要将 COSN 的 jar 包导入到 Tez 的压缩包内,下面以 apache-tez.0.8.5 为例进行说明:操作步骤(1)找到 CDH 集群安装的 tez 包,然后解压,例如/usr/local/service/tez/tez-0.8.5.tar.gz。
(2)将 COSN 的 jar 包放置到解压后的目录下,然后重新压缩输出一个压缩包。
(3)将新的压缩包上传到 tez.lib.uris 指定的路径下(如果之前存在路径则直接替换即可)。
(4)在 CDH 主页面,找到 HIVE,重启 hiveserver 和 hivemetastore。

3. Spark

操作步骤(1)按照 数据迁移 章节,配置好 HDFS 的相关配置,并且将 COSN 的 SDK jar 包,放置到 HDFS 相应的目录。
(2)重启 NodeManager 服务。
示例以 COSN 进行 Spark example word count 测试为例。

spark-submit  --class org.apache.spark.examples.JavaWordCount --executor-memory 4g --executor-cores 4  ./spark-examples-1.6.0-cdh5.16.1-hadoop2.6.0-cdh5.16.1.jar cosn://examplebucket-1250000000/wordcount

执行结果如下:

腾讯云对象存储CDH 配置 COSN 指引



4. Sqoop

操作步骤(1)按照 数据迁移 章节,配置好 HDFS 的相关配置,并且将 COSN 的 SDK jar 包,放置到 HDFS 相应的目录。(2)COSN 的 SDK jar 包还需要放到 sqoop 目录下(例如/opt/cloudera/parcels/CDH-5.16.1-1.cdh5.16.1.p0.3/lib/sqoop/)。(3)重启 NodeManager 服务。示例以导出 MYSQL 表到 COSN 为例,可参考 关系型数据库和 HDFS 的导入导出 文档进行测试。

sqoop import --connect "jdbc:mysql://IP:PORT/mysql" --table sqoop_test --username root --password 123**  --target-dir cosn://examplebucket-1250000000/sqoop_test

执行结果如下:

腾讯云对象存储CDH 配置 COSN 指引



5. Presto

操作步骤(1)按照 数据迁移 章节,配置好 HDFS 的相关配置,并且将 COSN 的 SDK jar 包,放置到 HDFS 相应的目录。
(2)COSN 的 SDK jar 包还需要放到 presto 目录下(例如/usr/local/services/cos_presto/plugin/hive-hadoop2)。
(3)由于 presto 不会加载 hadoop common 下的 gson-2.
..jar,需将 gson-2...jar 也放到 presto 目录下(例如 /usr/local/services/cos_presto/plugin/hive-hadoop2,仅 CHDFS 依赖 gson)。
(4)重启 HiveServer、HiveMetaStore 和 Presto 服务。
示例以 HIVE 创建 Location 为 COSN 的表查询为例:

select * from cosn_test_table where bucket is not null limit 1;

说明cosn_test_table 为 location 是 cosn scheme 的表。查询结果如下:

腾讯云对象存储CDH 配置 COSN 指引


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

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

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

相关推荐

  • 阿里云负载均衡管理闲置实例-云淘科技

    闲置实例向您展示超过7天未投入使用的后付费实例,关注闲置实例有助于您更好的管理成本。 背景信息 超过7天未使用,且满足以下任一条件的后付费CLB实例为闲置实例: 实例处于已停止状态 实例没有配置监听 实例的监听已全部停止 实例没有添加后端服务器 实例所有的后端服务器的权重为0 重要 闲置实例仍会计费,CLB实例只有释放后才会停止计费。更多信息,请参见CLB实…

    阿里云负载均衡 2023年12月10日
  • 腾讯云轻量应用服务器计费概述云小二

    本文主要介绍轻量对象存储(Lighthouse-COS)的计费方式、计费项、计费周期等信息,便于您快速了解轻量对象存储的计费体系。 计费方式 轻量对象存储支持按量计费(后付费)和套餐包(预付费)两种计费方式。详情如下: 计费方式 说明 按量计费(后付费) 轻量对象存储默认的计费方式,先使用,后付费。按照各计费项的实际用量,以天为单位,每日进行计量、结算、扣费…

    腾讯云 2023年12月9日
  • 腾讯云CVM服务器CentOS 停服说明及应对方案推荐

    CentOS 停服背景 CentOS 官方计划停止维护 CentOS Linux 项目,CentOS 8及 CentOS 7维护情况如下表格。如需了解更多信息,请参见 CentOS 官方公告。 操作系统版本 停止维护时间 使用者影响 CentOS 8 2022年01月01日 停止维护后将无法获得包括问题修复和功能更新在内的任何软件维护和支持。 CentOS …

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云对象存储下载与安装配置

    COSCLI 工具提供 Windows、Mac、Linux 操作系统的二进制包,通过简单的安装和配置后即可使用。 步骤一:下载 COSCLI 工具 您可以根据业务场景选择下载 COSCLI 工具的地址。如果您的服务器在国内,推荐使用国内站点下载地址。 国内站点下载地址 Github下载地址(推荐国外站点使用) Windows Windows Mac…

    腾讯云 2023年12月9日
  • 腾讯云TDSQL-C MySQL版概述

    TDSQL-C MySQL 版(TDSQL-C for MySQL)是腾讯云自研的新一代云原生关系型数据库。融合了传统数据库、云计算与新硬件技术的优势,100%兼容 MySQL,实现超百万级 QPS 的高吞吐,最高PB 级海量分布式智能存储,保障数据安全可靠。TDSQL-C MySQL 版提供备份、恢复、监控、快速扩容、数据传输等数据库运维全套解决方案,为您…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

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