java—什么是hdp:configuration in spring boot注解?

tez616oj  于 2021-06-09  发布在  Hbase
关注(0)|答案(3)|浏览(564)

我希望能够使用hbase和spring。我看到的文档中有这样的内容:

<hdp:configuration>
        fs.default.name=${hd.fs}
        mapred.job.tracker=${mapred.job.tracker}
        hbase.zookeeper.quorum=${hbase.zookeeper.quorum}
</hdp:configuration>

如何在application.java中以编程方式使用它?似乎没有关于如何使用hbasetemplate连接到hbase的示例或文档。查看另一篇文章中推荐的以下存储库没有与hbase相关的示例:
https://github.com/spring-projects/spring-hadoop-samples

vktxenjb

vktxenjb1#

我知道这个问题是老问题,但我只是遇到了这个问题,并能够解决。实现springhadoopconfigureradapter,如:

@Configuration
@EnableHadoop
public class HadoopConfiguration extends SpringHadoopConfigurerAdapter {
    @Autowired
    private ResourceLoader resourceLoader;

    @Override
    public void configure(HadoopConfigConfigurer config) throws Exception {

        org.apache.hadoop.conf.Configuration conf = getHadoopConfig("classpath:/mapred-site.xml");

        config
                .withResources()
                .resource("classpath:/yarn-site.xml")
                .resource("classpath:/hbase-site.xml")
                .resource("classpath:/mapred-site.xml")
                .and()
                .withProperties()
                .property("mapreduce.app-submission.cross-platform", "true")
                .property("mapreduce.framework.name", "yarn")
                .property("mapreduce.application.framework.path", "")
                .property("mapreduce.map.log.level", "INFO")
                .property("mapreduce.reduce.log.level", "INFO")
                .property("hbase.client.scanner.caching", "1")
                .property("hbase.client.scanner.timeout.period", "300000")
                .property("hbase.rpc.timeout", "300000");

    }

    private org.apache.hadoop.conf.Configuration getHadoopConfig(String mrSiteFile) throws IOException {
        Resource mapRedSite = resourceLoader.getResource(mrSiteFile);
        org.apache.hadoop.conf.Configuration conf = new org.apache.hadoop.conf.Configuration();
        conf.addResource(mapRedSite.getInputStream());
        return conf;
    }
}

然后就可以注入Hadoop配置:

@Autowired
org.apache.hadoop.conf.Configuration hadoopConfiguration;
yyhrrdl8

yyhrrdl82#

你看过这个吗:http://docs.spring.io/spring-hadoop/docs/2.0.1.release/reference/html/hbase.html ? 我相信这将为您提供与hbaseconfiguration config相当的配置。你也可以在那里添加你的属性。如果没用的话就发回去。

eivgtgni

eivgtgni3#

目前我还没有找到的基于注解的配置hdp:configuration,但是对于我的springhadoop项目,我为hadoop配置创建了一个xml,名为hadoop-context.xml,并将其导入config.java中,如下所示

@Configuration
    @ImportResource ( "hadoop-context.xml")
    public class Config
    {

     @Autowired
     private org.apache.hadoop.conf.Configuration hadoopConfiguration;
    }

很可能这对你解决问题会有帮助。

相关问题