zoukankan      html  css  js  c++  java
  • HIVE扩展GIS函数

        按项目日益增长的gis数据量要求,需要在大数据集群中部署HIVE的扩展函数。

        Apache Hive是一个建立在Hadoop架构之上的数据仓库。它能够提供数据的精炼,查询和分析。([引用自维基百科hive描述)

        HIVE允许用户使用UDF(user defined function)对数据进行处理。我们用到的是spatial-framework-for-hadoop。下载完源码,修改最外层的pom.xml,修改hadoop、hive、java版本为生产环境中版本,重新编译项出spatial-sdk-json-2.1.0.jar和spatial-sdk-hive-2.1.0.jar。

    <profile>
          <id>hadoop-2.7</id>
          <properties>
            <hadoop.version>2.7.3</hadoop.version>
          </properties>
    </profile>
    
     <profile>
          <id>hive-1.2</id>
          <properties>
            <hive.version>1.2.1</hive.version>
          </properties>
     </profile>
    
    <java.source.version>1.8</java.source.version>
    <java.target.version>1.8</java.target.version>
    <hadoop.version>2.7.3</hadoop.version>
    <hive.version>1.2.1</hive.version>
    

        下载最新的esri-geometry-java中的esri-geometry-api-2.2.1.jar,上传三个jar到linux系统(jar权限设置成最高),在hive的shell控制台输入添加jar和创建函数语句。

    add jar  /usr/hdp/2.6.4.0-91/hive/auxlib/esri-geometry-api-2.2.1.jar;
    add jar  /usr/hdp/2.6.4.0-91/hive/auxlib/spatial-sdk-json-2.1.0.jar;
    add jar  /usr/hdp/2.6.4.0-91/hive/auxlib/spatial-sdk-hive-2.1.0.jar;
    CREATE TEMPORARY FUNCTION STPoint as 'com.esri.hadoop.hive.ST_Point';
    

    测试通过
        自定义函数使用可以参考官方文档UDF文档,创建自定义函数可以参考spatial-framework-for-hadoop项目的hive下function-ddl.sql,但创建永久函数需要去掉temporary。

  • 相关阅读:
    du 命令计算隐藏文件夹或文件
    QEMU中VIRTIO实现
    virtio_blk
    网络虚拟化Virtio-net
    virtio desc
    vhost dpdk 共享内存
    gvisor 信号处理
    Java idea 执行单个测试方法
    Java idea 创建User.xml,需要新增一个mybatis-mapper.xml模板
    Java idea 创建log4j.properties
  • 原文地址:https://www.cnblogs.com/polong/p/9864967.html
Copyright © 2011-2022 走看看