You need to enable JavaScript to run this app.
文档中心
大数据文件存储

大数据文件存储

复制全文
下载 pdf
最佳实践
使用 Hive 访问 CloudFS 中的数据
复制全文
下载 pdf
使用 Hive 访问 CloudFS 中的数据
Hive 是基于 Hadoop 的一个数据仓库工具,用来进行数据提取、转化、加载。本文介绍如何配置 Hive 服务来访问 CloudFS 中的数据。​
前提条件​
在使用 Hive 服务访问大数据文件存储服务 CloudFS 前,确保您已经完成以下准备工作:​
  • 开通大数据文件存储服务 CloudFS 并创建文件存储,获取挂载信息。详细操作请参考创建文件存储实例。​
步骤一:配置 CloudFS 服务​
说明​
集群所有节点都要修改如下配置。​
  1. 执行以下命令,下载 1.5.3.49 版本的 CloudfsSDK 包。​
  • ​
    wget https://cloudfs.tos-cn-beijing.volces.com/sdk/prod/cloudfs-client-1.5.3.49.tar.gz​
    ​
  1. 执行以下命令,解压 CloudfsSDK 包。​
  • ​
    tar -zxvf cloudfs-client-1.5.3.49.tar.gz​
    ​
  1. 将解压文件cloudfs-client/lib/cloudfs-sdk-1.5.3.49.jar拷贝至集群/share/hadoop/hdfs路径下。​
  • ​
    cp {YOUR_DOWNLOAD_PATH}/cloudfs-client/lib/cloudfs-sdk-1.5.3.49.jar /opt/{Directory}/hadoop/share/hadoop/hdfs/​
    ​
  1. 配置 core-site.xml。​
​
<property>​
<name>fs.defaultFS</name>​
<value>cfs://xxxx.cfs-cn-beijing.ivolces.com</value>​
</property>​
<property>​
<name>fs.cfs.impl</name>​
<value>com.volcengine.cloudfs.fs.CfsFileSystem</value>​
</property>​
​
<property>​
<name>fs.AbstractFileSystem.cfs.impl</name>​
<value>com.volcengine.cloudfs.fs.CFS</value>​
</property> ​
​
<property>​
<name>cfs.access.key</name>​
<value>AKxxxxxxxxxxx</value>​
</property>​
<property>​
<name>cfs.secret.key</name>​
<value>SKxxxxxxxxxxx</value>​
</property>​
​
<!-- 可选:如果使用的是 STS Token,需要填写 -->​
<property>​
<name>cfs.security.token</name>​
<value>STSTokenxxxxxxxx</value>​
</property>​
​
<!-- 可选:如果开启缓存加速,需要配置缓存加速接入的 VPC 的网段 -->​
<property>​
<name>cfs.client.network.segment</name>​
<value><VPC 网段,例如 192.168.0.0/16></value>​
</property>​
​
其中:​
  • xxxx.cfs-cn-beijing.ivolces.com是大数据文件存储的挂载点地址,将其替换为已创建文件存储系统的挂载地址即可。​
  • AKxxx和SKxxx分别为访问密钥ID和私有访问密钥,详细说明请参考密钥管理。​
  1. 登录火山引擎 E-MapReduce 控制台。​
  1. 在集群管理页面,找到需要挂载文件存储实例的目标 E-MapReduce 集群。​
  1. 选择服务列表 > HDFS。​
  1. 在页面右侧的操作栏中,单击重启 > 重启全部组件,重启服务。​
步骤二:使用 Hive 访问 CloudFS 数据​
  1. 您可以通过以下两种方法将 Hive 的表数据存储至 CloudFS:​
  • 修改 hive 默认存储位置。​
  • 修改 hive-site 中的配置项 hive.metastore.warehouse.dir。例如配置成:cfs://{YOUR_ENDPOINT}/hive/store。​
  • 创建库/表/分区时指定存储路径。​
  • ​
    CREATE DATABASE database_name​
    LOCATION 'cfs://{YOUR_ENDPOINT}/hive/store';​
    ​
  • ​
    CREATE [EXTERNAL] TABLE table_name​
    [(col_name data_type,...)]​
    LOCATION 'cfs://{YOUR_ENDPOINT}/hive/store';​
    ​
  • ​
    ALTER TABLE table_name ADD PARTITION[(col_name data_type,...)] ​
    LOCATION 'cfs://{YOUR_ENDPOINT}/hive/store';​
    ​
说明​
{YOUR_ENDPOINT} 替换为您的文件存储 CFS 版挂载点域名(cfs://xxxx.cfs-cn-beijing.ivolces.com)。​
  1. 验证是否存储成功。​
  1. 创建 Hive 表。​
  • 执行表查询命令查看返回结果:​
  • ​Image​​
  1. 将本地数据集加载至 Hive 表中。​
  • ​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/region.tbl' INTO TABLE region;​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/nation.tbl' INTO TABLE nation;​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/part.tbl' INTO TABLE part;​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/supplier.tbl' INTO TABLE supplier;​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/partsupp.tbl' INTO TABLE partsupp;​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/customer.tbl' INTO TABLE customer;​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/orders.tbl' INTO TABLE orders;​
    LOAD DATA LOCAL INPATH '/{Directory}/tpch/lineitem.tbl' INTO TABLE lineitem;​
    ​
  • 说明​
{Directory} 替换为您的文件加载路径。​
  • 上传完成后,将返回下图内容。​
  • ​Image​​
  1. 执行查询命令查询 Hive 表。​
  • ​
    select C_NATIONKEY,count(*) from customer group by C_NATIONKEY;​
    ​
  • ​Image​​
​
最近更新时间:2025.07.25 18:37:27
这个页面对您有帮助吗?
有用
有用
无用
无用