全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

KS3-HDFS服务访问

最近更新时间:2024-12-03 10:07:19

本文介绍如何通过Java SDK访问KS3-HDFS服务。

KS3-HDFS 在 kmr5 上部署

  1. 登录KMR控制台。

  2. 选择 存算分离 -> 点击编辑 -> 开启存算分离。

  1. 填入AK/SK信息。

  2. 点击确认。

1. 请确认输入的AK/SK有bucket-name的对应操作权限。

2. 空间策略设置详情请参见文档:空间策略设置

  1. 在配置选项卡中,会自动填写相关配置项默认值,请根据实际情况修改,并保存。

  1. 重启HDFS,MapReduce,Spark,HBase和Hive服务。

  2. 验证。

hdfs dfs -ls ks3://{bucket-name}/
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.1.jar wordcount ks3-input ks3-output

KS3-HDFS客户端使用

使用示例:

import alluxio.conf.PropertyKey;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

publicclassOK8 {
  publicstaticvoidmain(String[] args)throws Exception {
    StringaccessKey="";
    StringaccessSecret="";

    org.apache.hadoop.conf.Configurationconf=neworg.apache.hadoop.conf.Configuration();
    conf.set(PropertyKey.MASTER_RPC_ADDRESSES.getName(), "gateway地址");
    conf.set("alluxio.user.client.base.filesystem.class", "alluxio.client.file.Ks3HdfsMetaFileSystem");
    conf.set("alluxio.ks3.hdfs.mode", "true");
    conf.set("fs.ks3.AccessKey", accessKey);
    conf.set("fs.ks3.AccessSecret", accessSecret);
    conf.set("fs.ks3.endpoint", "ks3-cn-beijing.ksyuncs.com");
    conf.set("fs.ks3.impl", "alluxio.hadoop.Ks3HdfsFileSystem");

    FileSystemfs2=newPath("ks3://YourBucketName/").getFileSystem(conf);
    FileStatus[] rs = fs2.listStatus(newPath("/ryan/m"));
    System.out.println(rs.length);
  }
}

注意事项

  • 在对象存储系统中,约定俗称用以"/"结尾的空文件代表这是一个文件夹。

  • 禁止在ks3上存在同名的文件和文件夹,比如如果同时存在ks3 key为"/dir1/dir2/hello_world","/dir1/dir2/hello_world/",可能会导致KS3-HDFS发生异常行为。

关于KS3-HDFS更多实践详情请参见文档:KS3-HDFS实践

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈