更新时间:2024-08-03 GMT+08:00

Alluxio初始化

功能简介

在使用Alluxio提供的API之前,需要先进行Alluxio初始化操作。过程为:

  1. 加载HDFS服务配置文件。
  2. 实例化Filesystem。
  3. 使用HDFS的API。

代码样例

如下是代码片段,详细代码请参考ExampleClient类。

/**
* load configurations from alluxio-site.properties
* @throws IOException
*/
private void loadConf() throws IOException {
	InputStream fileInputStream = null;
	alluxioConf = new Properties();
	File propertiesFile = new File(PATH_TO_ALLUXIO_SITE_PROPERTIES);
	try {
		fileInputStream = new FileInputStream(propertiesFile);
		alluxioConf.load(fileInputStream);
	}
	catch (FileNotFoundException e) {
		System.out.println(PATH_TO_ALLUXIO_SITE_PROPERTIES + "does not exist. Exception: " + e);
	}
	catch (IOException e) {
		System.out.println("Failed to load configuration file. Exception: " + e);
	}
	finally{
		close(fileInputStream);
	}
}

/**
* build Alluxio instance
*/
private void instanceBuild() throws IOException {
// get filesystem
	InstancedConfiguration conf = new InstancedConfiguration(ConfigurationUtils.defaults());
	conf.set(PropertyKey.MASTER_RPC_ADDRESSES, alluxioConf.get("alluxio.master.rpc.addresses"));
	FileSystemContext fsContext = FileSystemContext.create(conf);
	fSystem = FileSystem.Factory.create(fsContext);
}