Geomesa

geomesa

제품 정보

즐겨찾기

태그

프로그래밍 언어

공개 채팅

지원 계획

현재 사용할 수 있는 OSS 플랜이 없습니다.

저장소의 제공자 또는 기여자인 경우 OSS 플랜 추가를 시작할 수 있습니다.

OSS 플랜 추가
여기에서 자세히 알아보세요

이 오픈소스에 대한 플랜을 찾고 있다면 저희에게 문의해 주세요.

전문 공급자와 연락하실 수 있도록 도와드리겠습니다.

제품 세부 정보

GeoMesa is a suite of tools for working with big geo-spatial data in a distributed fashion.

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 GeoMesa is a member of the LocationTech working group of the Eclipse Foundation.

Join the Community

  • Join the chat at https://gitter.im/locationtech/geomesa
  • GeoMesa Users and Dev mailing lists
  • GeoMesa JIRA for issue tracking

Documentation

Downloads

Current release: 5.1.0

     Accumulo | HBase | Cassandra | Kafka | Redis | FileSystem | PostGIS

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:

$ gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys CD24F317

Then verify the file:

$ gpg2 --verify geomesa-accumulo_2.12-5.1.0-bin.tar.gz.asc geomesa-accumulo_2.12-5.1.0-bin.tar.gz

The keys currently used for signing are:

Key ID Name
CD24F317 Emilio Lahr-Vivaz <elahrvivaz(-at-)ccri.com>
1E679A56 James Hughes <jnh5y(-at-)ccri.com>

Maven Integration

Maven

GeoMesa is hosted on Maven Central. To include it as a dependency, add the desired modules, for example:

<dependency>
  <groupId>org.locationtech.geomesa</groupId>
  <artifactId>geomesa-accumulo-datastore_2.12</artifactId>
  <version>5.1.0</version>
</dependency>

GeoMesa provides a bill-of-materials module, which can simplify version management:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.locationtech.geomesa</groupId>
      <artifactId>geomesa-bom_2.12</artifactId>
      <version>5.1.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

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:

<repositories>
  <!-- geotools -->
  <repository>
    <id>osgeo</id>
    <url>https://repo.osgeo.org/repository/release</url>
  </repository>
  <!-- confluent -->
  <repository>
    <id>confluent</id>
    <url>https://packages.confluent.io/maven/</url>
  </repository>
</repositories>

Nightly Snapshots

Snapshot versions are published nightly to the Eclipse repository:

<repository>
  <id>geomesa-snapshots</id>
  <url>https://repo.eclipse.org/content/repositories/geomesa-snapshots</url>
  <releases>
    <enabled>false</enabled>
  </releases>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
</repository>

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:

<dependency>
  <groupId>org.locationtech.geomesa</groupId>
  <artifactId>geomesa-gt-spark-runtime_2.12</artifactId>
  <version>5.1.0</version>
  <exclusions>
    <exclusion>
      <!-- if groupId wildcards are not supported, the two main ones are jline:* and org.geotools:* -->
      <groupId>*</groupId>
      <artifactId>*</artifactId>
    </exclusion>
  </exclusions>
</dependency>

These JARs are also included in the Downloads bundles, above.

sbt Integration

Similarly, integration with sbt is straightforward:

// 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.1.0"
)

Building from Source

Development version: 5.2.0-SNAPSHOT

     Build Status

     Build Status

     OpenSSF Scorecard

Requirements:

Use Git to download the source code. Navigate to the destination directory, then run:

git clone git@github.com:locationtech/geomesa.git
cd geomesa

The project is built using Maven. To build, run:

mvn clean install -DskipTests

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 -DskipTests (note: requires docker to be available).

Build with Bloop Compile Server

GeoMesa also provides experimental support for the Bloop compile server, which provides fast incremental compilation. To export the GeoMesa build to Bloop, run:

./build/scripts/bloop-export.sh

For more information on using Bloop, refer to the Bloop documentation.

Build with Zinc Compile Server

GeoMesa also provides experimental support for the Zinc compile server, which provides fast incremental compilation. However, please note that Zinc is no longer actively maintained. To use an existing Zinc server, run maven with -Pzinc. GeoMesa provides a helper script at build/mvn, which is a wrapper around Maven that downloads and runs Zinc automatically:

build/mvn clean install -T8 -DskipTests

If the Zinc build fails with an error finding "javac", try setting the JAVA_HOME environment variable to point to the root of your JDK. Example from a Mac:

JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home" build/mvn clean install

Scala Cross Build

To build for a different Scala version (e.g. 2.13), run the following script, then build as normal:

./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

문의하기

  • 비즈니스 개발자를 위한 최신 정보를 원하십니까? 소스 코드 프로젝트에 대한 PieceX 커뮤니티의 요구사항을 알아보세요. PieceX의 최신 무료 커뮤니티 코드를 빠르게 알려드립니다.
PieceX Logo