MapReduce服务 MRS-HDFS初始化:代码样例

时间:2023-11-01 16:19:45

代码样例

如下是代码片段,详细代码请参考com.huawei.bigdata.hdfs.examples中的HdfsExample类。

在Linux客户端运行应用和在Windows环境下运行应用的初始化代码相同,代码样例如下所示。
 //初始化confLoad(); // 创建一个用例 HdfsExample hdfs_examples = new HdfsExample("/user/hdfs-examples", "test.txt"); /**  *   * 如果程序运行在Linux上,则需要core-site.xml、hdfs-site.xml的路径修改  * 为在Linux下客户端文件的绝对路径  *  *   */   private static void confLoad() throws IOException {   conf = new Configuration();   // conf file   conf.addResource(new Path(PATH_TO_HDFS_SITE_XML));   conf.addResource(new Path(PATH_TO_CORE_SITE_XML));   // conf.addResource(new Path(PATH_TO_SMALL_SITE_XML)); } /**  *创建用例  */ public HdfsExample(String path, String fileName) throws IOException  {   this.DEST_PATH = path;   this.FILE_NAME = fileName;   instanceBuild(); } private void instanceBuild() throws IOException {   fSystem = FileSystem.get(conf); }
  • (可选)运行此样例代码需要设置运行用户,若需运行Colocation相关操作的样例代码,则此用户需属supergroup用户组。设置运行用户有两种方式,添加环境变量HADOOP_USER_NAME或者修改代码。

    添加环境变量HADOOP_USER_NAME:在Windows环境中可参考编译并运行程序章节的1,在Linux环境中可参考安装客户端时编译并运行程序章节的4未安装客户端时编译并运行程序章节的4

    修改代码:在没有设置HADOOP_USER_NAME的场景下,直接修改代码中的USER。如下所示。
          System.setProperty("HADOOP_USER_NAME", USER);
support.huaweicloud.com/devg3-mrs/mrs_07_300012.html