Bringing the scalability of distributed computing to modern geospatial software.
rfecher on gh-pages
Lastest javadoc on successful t… (compare)
rfecher on master
fixing coveralls (#1488) (compare)
rfecher on master
Update README.md (compare)
rfecher on master
updated readme.md (#1486) (compare)
SpatialIndexBuilder spIdxBldr = new SpatialIndexBuilder();
spIdxBldr.setCrs("EPSG:32636");
spatialIndex = spIdxBldr.createIndex();
TemporalIndexBuilder tmpIdxBldr = new TemporalIndexBuilder();
tmpIdxBldr.setName("TEMPORAL_IDX");
tmpIdxBldr.setPeriodicity(TemporalBinningStrategy.Unit.HOUR);
temporalIndex = tmpIdxBldr.createIndex();
dataStore.addIndex(spatialIndex);
dataStore.addIndex(temporalIndex);
dataStore.addType(sfAdapter, spatialIndex,temporalIndex);
25 Oct 12:33:01 ERROR [vector.FeatureDataAdapter] - Multiple indices with different CRS is not supported
Exception in thread "main" java.lang.RuntimeException: Multiple indices with different CRS is not supported
at org.locationtech.geowave.adapter.vector.FeatureDataAdapter.init(FeatureDataAdapter.java:241)
at org.locationtech.geowave.core.store.base.BaseDataStore.internalAddIndices(BaseDataStore.java:1142)
at org.locationtech.geowave.core.store.base.BaseDataStore.addType(BaseDataStore.java:1167)
at com.uasis.geowaveapi.Geowave.ingestFromFile(Geowave.java:95)
at com.uasis.geowaveapi.Geowave.main(Geowave.java:82)
public boolean init(final Index... indices) throws RuntimeException {
String indexCrsCode =
reprojectedFeatureType == null ? null
: GeometryUtils.getCrsCode(reprojectedFeatureType.getCoordinateReferenceSystem());
for (final Index primaryindx : indices) {
// for first iteration
if (indexCrsCode == null) {
if (primaryindx.getIndexModel() instanceof CustomCrsIndexModel) {
indexCrsCode = ((CustomCrsIndexModel) primaryindx.getIndexModel()).getCrsCode();
} else {
indexCrsCode = GeometryUtils.DEFAULT_CRS_STR;
}
} else {
if (primaryindx.getIndexModel() instanceof CustomCrsIndexModel) {
// check if indexes have different CRS
if (!indexCrsCode.equals(
((CustomCrsIndexModel) primaryindx.getIndexModel()).getCrsCode())) {
LOGGER.error("Multiple indices with different CRS is not supported");
throw new RuntimeException("Multiple indices with different CRS is not supported");
}
} else {
if (!indexCrsCode.equals(GeometryUtils.DEFAULT_CRS_STR)) {
LOGGER.error("Multiple indices with different CRS is not supported");
throw new RuntimeException("Multiple indices with different CRS is not supported");
}
}
}
}
Java docs for ingest:
<T> void ingest(String inputPath,
Index... index)
Ingest from path. If this is a directory, this method will recursively search for valid files to ingest in the directory. This will iterate through registered IngestFormatPlugins to find one that works for a given file. The applicable ingest format plugin will choose the DataTypeAdapter and may even use additional indices than the one provided.
Parameters:
inputPath - The path for data to read and ingest into this data store
index - The indexing approach to use.
@rfecher I tried to create the store using geowave cli, it worked and not getting any error like with geoserver admin console.
But I am not clear how the store can be linked with a dynamodb table in the aws?
Our requirement is to create a geoserver layer from the geometrical data in dynamodb. Is that possible with geowave?
When trying from geoserver console, only the endpoint required and the parameter list not mentioning anything related to the aws credentials to access the dynamodb. So how the credentials are resolved by geoserver?
At some point, with high precision, high dimensionality curves, the number of possible unit cells can become too large to deal with. In such a case, GeoWave optimizes this by treating the curve as a “lower cardinality” curve than it actually is. So the unit cell size might not be 1, but instead 64, 128, 1024, etc. This allows the user to still achieve high precision when selection windows are small but not spend an inordinate amount of time fully decomposing for large selection windows.
n
bands you got n
single-band coverages rather than one n-band
coverage. If thats the case, and you want a single multi-band coverage I've used geotools' BandMerge operation successfully before (just make sure you do it before ingesting into geowave so geowave gets a consistent representation of the coverage). Actually this is exactly one of the options available within geowave's landsat8 ingest so here's code referencing how to do exactly this