我正在尝试使用来自jboss的phoenix CsvBulkLoadTool()来加载hbase表。 它正在运行,但它没有从WEB-INF / classes文件夹中保存的hbase-site.xml进行配置。
当我在命令行中运行时,它从其中指定的类路径中获取hbase-site.xml属性。
INFO QueryUtil:335使用jdbc创建连接url:jdbc:phoenix:localhost:2181:/ hbase;
但是在hbase-site.xml中,zookeeper地址不是localhost 现在它只使用-z选项。
答案 0 :(得分:0)
将hbase-site.xml的所有配置放在从该位置挑选的其他配置文件中。您可以将其放在 core-site.xml 中,它将从中挑选配置那里。
答案 1 :(得分:0)
根据需要将core-site.xml和hbase-site.xml文件保留在您选择的文件夹中。然后将它们作为资源添加到org.apache.hadoop.conf.Configuration实例。
Configuration conf = new Configuration(false);
conf.addResource("/path/to/core-site.xml");
conf.addResource("/path/to/hbase-site.xml");
现在将此conf
传递给您的CsvBulkLoadTool作业实例:
CsvBulkLoadTool job = new CsvBulkLoadTool();
job.setConf(conf);