DLA Ganos内置了GeoTools数据驱动。任何兼容GeoTools数据访问接口的存储系统都可以作为DLA Ganos矢量数据源,如PostGIS、GeoMesa等。本文主要介绍DLA Ganos如何加载兼容GeoTools数据访问接口的存储系统中的数据。

操作步骤

  1. 初始化SparkSession:
    //初始化SparkSession
    val spark = SparkSession.builder
          .appName("Simple Application")
          .config("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
          .config("spark.sql.crossJoin.enabled", "true")
          .config("spark.kryo.registrator", classOf[GanosSparkKryoRegistrator].getName)
          .getOrCreate()
    
    //指定HBase连接参数,POINT为Catalog名称
    val params = Map(
          "hbase.catalog" -> "POINT",
          "hbase.zookeepers" -> "zookeeper地址",
          "geotools" -> "true")
    
    //加载AIS数据源
    val dataFrame = spark.read
          .format("ganos-geometry")
          .options(params)
          .option("ganos.feature", "AIS")
          .load()
    
    dataFrame.show
  2. 输出结果如下: 11