Skip to content

Project Layout

bmendell edited this page Jul 2, 2015 · 1 revision

Project Layout

GeoWave Directory Structure

  • .utility : scripts used by Jenkins CI

  • analytics : java code to run GeoWave Analytics (MapReduce)

  • core : java code that supports CLI, geotime (spatial/temporal data types), Index, Ingest and Store

  • deploy : Code, config and scripts to support deployment and packaging

  • dev-resources : environment support files

  • docs : GeoWave ascii doc used to generate documentation in multiple formats

  • examples : examples of how to do bulk ingest

  • extensions : java code that supports adapters (raster, vector), datastores and formats

  • services : java code that supports service, client and implementation

  • test : system integration tests

Code Organization of GeoWave Parent Directory

  • geowave-analytic-parent (analytics dir)
    Supports GeoWave Analytics

    • geowave-analytic-api
      Collection of analytic methods and wrapper classes

    • geowave-analytic-mapreduce
      Collection of mapreduce based analytics (clustering, kde, kmeans, nn)

  • geowave-core-parent (core dir)

    • geowave-core-cli
      Command line interface to GeoWave functionality

    • geowave-core-geotime
      Classes supporting spatial/temporal data types

      • index

      • index.dimension
        Dimension definitions

      • ingest
        Dimentionality Type Providers

      • store.dimension
        Field, Adapter and Wrapper definitions for Geometry, Latitude, Longitude, Spatial and Time

      • store.field
        A set of classes to act as Providers

      • store.filter
        Supports fine-grained acceptance testing (intersection test with a query geometry) with JTS geometry

      • store.query
        Temporal and Spatial Query support

      • store.statistics
        Statistics classes to support bounded accesses

    • geowave-core-index
      Classes to support index creation

    • geowave-core-ingest
      supports capturing of data

    • geowave-core-store
      data store access classes (ingest and query). This includes classes for reading/writing fields, handling field visibility,

      • adapter
        Adapter Definitions

      • adapter.statistics
        Statistical support for Adapters

      • data
        Reader and Writer support, Persistence handlers

      • data.field
        Readers and Writers for Field and Fields

      • data.field.base
        Serialization Providers for primitive types

      • data.visibility
        Visibility handlers and support

      • dimension
        Array and dimension support

      • filter

      • index
        Classes to support everything necessary to index data within GeoWave. The key components are the indexing strategy and the common index model.

      • query

  • geowave-deploy (deploy dir)
    Code, config and scripts to support deployment and packaging

  • geowave-doc (docs dir)
    ASCII doc used to generate documentation in multiple formats includingGeoWave GitHub.iowebsite

  • geowave-example (examples dir)
    Demonstration code for ingest mechanisms (more to come)

  • geowave-extension-parent (extensions dir)

    • (extensions/adapters dir)

      • geowave-adapter-raster
        Classes for accessing raster data from GeoWave tables

      • geowave-adapter-vector
        Classes for accessing vector data from GeoWave tables

    • (extensions/datastores dir)

      • geowave-datastore-accumulo
        Interface to Accumulo

    • (extensions/formats dir)

      • geowave-format-geolife
        An ingest format for GPS-data-driven innovation on the Microsoft Virtual Earth

      • geowave-format-gpx
        GPX, or GPS Exchange Format, is an XML schema designed as a common GPS data format for software applications

      • geowave-format-raster
        GeoTools raster data ingest format

      • geowave-format-tdrive
        An ingest format for MS T-drive data

      • geowave-format-vector
        GeoTools vector data ingest format

  • geowave-service-parent (services dir)

    • geowave-service-api
      Interface code to GeoServer, Accumulo and ingest functions

    • geowave-service-client
      Client based code that calls functionality in webapp

    • geowave-service-webapp
      Web-App to support Geoserver, Accumulo Server Info and ingest functions

  • geowave-test (test dir)
    System Integration Tests: GeoServer services object, MapReduce Environment, GeoWave interfaces and DFS