如何使用spring数据设置hadoop分布式缓存

时间:2016-04-15 11:36:41

标签: spring hadoop spring-data spring-data-hadoop

我是初学数据并尝试通过分布式缓存分发所有spring数据依赖项。但它没有用,没有找到有用的资源。

我在 application-context.xml 中的配置: -

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/hadoop"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:beans="http://www.springframework.org/schema/beans"
       xmlns:hdp="http://www.springframework.org/schema/hadoop"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
    http://www.springframework.org/schema/hadoop http://www.springframework.org/schema/hadoop/spring-hadoop.xsd">
    <hdp:configuration>
      fs.defaultFS=${hdp.fs}
    </hdp:configuration>

    <hdp:job id="wordcountJob" 
         input-path="${wc.input.path}" 
         output-path="${wc.output.path}" 
         mapper="${wc.mapper}"
         reducer="${wc.reducer}"/>


    <hdp:cache create-symlink="true">
   <hdp:classpath value="/user/hadoop/DistributedCache/spring-data-hadoop-2.3.0.RELEASE.jar" />
   </hdp:cache>

    <hdp:job-runner id="runner" job-ref="wordcountJob" run-at-startup="true"/>
   <context:property-placeholder location="hadoop-configs.properties"/>
</beans:beans>

我试图将spring-data-hadoop jar分发给每个节点。但到目前为止,它还没有奏效。是这样的吗?任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

您可以在作业配置中添加它。

<hdp:job id="MaxTempJob"
    input-path="${input.path}"
    output-path="${output.path}"
    jar-by-class="com.chanchal.MaxTemperature"
    mapper="com.chanchal.MaxTemperatureMapper"
    map-key="org.apache.hadoop.io.LongWritable"
    map-value="org.apache.hadoop.io.Text"
    libs="/lib/spring-data-hadoop-2.3.0.RELEASE.jar"
/>

lib是项目的位置。