# geomesa **Repository Path**: mirrors_locationtech/geomesa ## Basic Information - **Project Name**: geomesa - **Description**: GeoMesa is a suite of tools for working with big geo-spatial data in a distributed fashion. - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-09 - **Last Updated**: 2026-01-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

GeoMesa is an open source suite of tools that enables large-scale geospatial querying and analytics on distributed computing systems. GeoMesa provides spatio-temporal indexing on top of the Accumulo, HBase and Cassandra databases for massive storage of point, line, and polygon data. GeoMesa also provides near real time stream processing of spatio-temporal data by layering spatial semantics on top of Apache Kafka. Through GeoServer, GeoMesa facilitates integration with a wide range of existing mapping clients over standard OGC (Open Geospatial Consortium) APIs and protocols such as WFS and WMS. GeoMesa supports Apache Spark for custom distributed geospatial analytics.

#### ![LocationTech](https://pbs.twimg.com/profile_images/2552421256/hv2oas84tv7n3maianiq_normal.png) GeoMesa is a member of the [LocationTech](https://projects.eclipse.org/projects/locationtech.geomesa) working group of the Eclipse Foundation. ## Join the Community **Join the chat at https://gitter.im/locationtech/geomesa** | [**User list**](https://accounts.eclipse.org/mailing-list/geomesa-users) | [**Developer list**](https://accounts.eclipse.org/mailing-list/geomesa-dev) | [**JIRA issue tracking**](https://geomesa.atlassian.net/issues/?jql=order+by+created+DESC) ## Documentation [**Documentation**](https://www.geomesa.org/documentation/) | [**Upgrade Guide**](https://www.geomesa.org/documentation/user/upgrade.html) | [**Quick Starts**](https://www.geomesa.org/documentation/stable/tutorials/index.html#quick-starts) | [**Tutorials**](https://www.geomesa.org/tutorials/) ## Downloads **Latest release: [5.4.0](https://github.com/locationtech/geomesa/releases/tag/geomesa-5.4.0)**  -  [**Accumulo**](https://github.com/locationtech/geomesa/releases/download/geomesa-5.4.0/geomesa-accumulo_2.12-5.4.0-bin.tar.gz) | [**HBase**](https://github.com/locationtech/geomesa/releases/download/geomesa-5.4.0/geomesa-hbase_2.12-5.4.0-bin.tar.gz) | [**Cassandra**](https://github.com/locationtech/geomesa/releases/download/geomesa-5.4.0/geomesa-cassandra_2.12-5.4.0-bin.tar.gz) | [**Kafka**](https://github.com/locationtech/geomesa/releases/download/geomesa-5.4.0/geomesa-kafka_2.12-5.4.0-bin.tar.gz) | [**Redis**](https://github.com/locationtech/geomesa/releases/download/geomesa-5.4.0/geomesa-redis_2.12-5.4.0-bin.tar.gz) | [**FileSystem**](https://github.com/locationtech/geomesa/releases/download/geomesa-5.4.0/geomesa-fs_2.12-5.4.0-bin.tar.gz) | [**PostGIS**](https://github.com/locationtech/geomesa/releases/download/geomesa-5.4.0/geomesa-gt_2.12-5.4.0-bin.tar.gz) ### Verifying Downloads Downloads hosted on GitHub include SHA-256 hashes and `gpg` signatures (`.asc` files). To verify a download using `gpg`, import the appropriate key then verify: ```bash gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys CD24F317 gpg --verify geomesa-accumulo_2.12-5.4.0-bin.tar.gz.asc geomesa-accumulo_2.12-5.4.0-bin.tar.gz ``` The keys used for signing are: ``` CD24F317 Emilio Lahr-Vivaz 1E679A56 James Hughes ``` ## Maven Integration [![Maven](.github/maven-badge.svg)](https://search.maven.org/search?q=g:org.locationtech.geomesa) GeoMesa is hosted on Maven Central. To include it as a dependency, add the desired modules, for example: ```xml org.locationtech.geomesa geomesa-accumulo-datastore_2.12 5.4.0 ``` GeoMesa provides a bill-of-materials module, which can simplify version management: ```xml org.locationtech.geomesa geomesa-bom_2.12 5.4.0 pom import ``` GeoMesa depends on several third-party libraries that are only available in separate repositories. To include GeoMesa in your project, add the following repositories to your pom: ```xml osgeo https://repo.osgeo.org/repository/release confluent https://packages.confluent.io/maven/ ``` ### Spark Runtimes GeoMesa publishes `spark-runtime` JARs for integration with Spark environments like Databricks. These shaded JARs include all the required dependencies in a single artifact. When importing through Maven, all transitive dependencies can be excluded. There are Spark runtime JARs available for most of the different DataStore implementations: ```xml org.locationtech.geomesa geomesa-gt-spark_2.12 runtime 5.4.0 * * ``` These JARs are also included in the [Downloads](#downloads) bundles, above. ## `sbt` Integration Similarly, integration with `sbt` is straightforward: ```scala // Add necessary resolvers resolvers ++= Seq( "osgeo" at "https://repo.osgeo.org/repository/release", "confluent" at "https://packages.confluent.io/maven" ) // Select desired modules libraryDependencies ++= Seq( "org.locationtech.geomesa" %% "geomesa-utils" % "5.4.0" ) ``` ## Development Snapshots Unreleased features are available for testing or early adoption using development snapshots. Note that development snapshots do not carry any of the normal guarantees around compatibility and stability. Documentation is published nightly to [https://geomesa.org/documentation/latest/](https://geomesa.org/documentation/latest/). Maven artifacts are published nightly to the Eclipse Maven repository: ```xml geomesa-snapshots https://repo.eclipse.org/content/repositories/geomesa-snapshots false true ``` ## Building from Source    [![Build Status](https://github.com/locationtech/geomesa/actions/workflows/build-and-test.yml/badge.svg?branch=main)](https://github.com/locationtech/geomesa/actions/workflows/build-and-test.yml?query=branch%3Amain)   [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/locationtech/geomesa/badge)](https://api.securityscorecards.dev/projects/github.com/locationtech/geomesa) Requirements: * [Git](https://git-scm.com/) * [Java JDK 17](https://adoptium.net/temurin/releases/) * [Apache Maven](https://maven.apache.org/) 3.8.1 or later * [Docker](https://docs.docker.com/get-docker/) (only required for running unit tests) Use Git to download the source code. Navigate to the destination directory, then run: ```bash git clone git@github.com:locationtech/geomesa.git cd geomesa ``` The project is built using Maven. To build, run: ```bash mvn clean install -Dmaven.test.skip ``` The full build takes quite a while. To speed it up, you may use multiple threads (`-T 1.5C`). To run unit tests, omit the `-Dmaven.test.skip` (note: requires `docker` to be available). ### Build with Bloop Compile Server GeoMesa also provides experimental support for the [Bloop](https://scalacenter.github.io/bloop/) compile server, which provides fast incremental compilation. To export the GeoMesa build to Bloop, run: ```bash ./build/scripts/bloop-export.sh ``` For more information on using Bloop, refer to the [Bloop documentation](https://scalacenter.github.io/bloop/docs/build-tools/maven). ### Scala Cross Build To build for a different Scala version (e.g. 2.13), run the following script, then build as normal: ```bash ./build/scripts/change-scala-version.sh 2.13 ``` ### Building on OS X When building on OS X and using Docker Desktop in a non-default configuration, you may need to edit `~/.testcontainers.properties` to contain the following: ``` docker.client.strategy=org.testcontainers.dockerclient.UnixSocketClientProviderStrategy ```