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)
"adapter_geowave_metadata ,aim_geowave_metadata , index_geowave_metadata ,internal_adapter_geowave_metadata , stats_geowave_metadata ,testindex5 "
geowave ingest localtogw /mnt/ne_50m_admin_0_countries teststore5 testindex5 -f geotools-vector After this when i do " geowave store listtypes teststore5"
, it gives the following output."Available types: ne_50m_admin_0_countries "
"geowave analytic dbscan -cmi 5 -cms 10 -emn 2 -emx 6 -pmd 1000 -orc 4 -hdfs localhost:9870 -jobtracker localhost:8088 -hdfsbase /test_dir teststore5 --query.typeNames ne_50m_admin_0_countries "
I get the error "Error: java.lang.IllegalArgumentException: Can not set [Ljava.lang.String; field org.locationtech.geowave.core.cli.parsed.cli_6816fd68_a6d5_46ed_ae49_9547821da5c3_42.field_37 to java.lang.String"
can anyone help me how to solve this? Thank you.Hi, I am new to geowave. In one of the geowave examples there are these commands:
I do not see there instructions to geowave how it should construct the index. I assume that gdelt
and gdelt-spatial
are just names. Or are these names recognized by geowave and used to construct the right index?How does geowave know how to construct the index? Can you shed some light on this? Thanks!
gdelt
is just a named placeholder for the store which got added in the first command. Its essentially the connection info plus perhaps a few more advanced options. gdelt-spatial
is also a placeholder for the index whose options are provided by java SPI implementations of DimensionalityTypeProviderSpi
. The types available are defined by each implementation's "type name" such as this and the other options are defined by the JCommander annotations on this object. Then the actual index is programmatically built based on the commandline options here. There are also always available options such as num_partitions (typing --help on any of the commands will give you feedback on what you can do, and at times defining the type with -t and then --help will give you additional options). In addition to the "spatial" type used here, we also have a -t spatial_temporal type option and a -t temporal type option that we provide out of the box. Additionally by just dropping in implementations of the SPI interface with the appropriates META-INF/services within any directory on the classpath (we should automatically create a /plugins directory on the classpath with any of our installers) you can define your own index types. Additionally, because the ingest tooling is very flexible with several extension points such as index types, you can print out all available plugins currently on the classpath with the geowave ingest listplugins
command.
@rfecher Hm… I profiled Cassandra queries (basically just by enabling Cassandra tracing)
And in all cases I had 3 dim index (geometry, time) and my query had only geometry it looks like it was just performing the select * from indexTable;
query, am I reading it a bit incorrect?
In cases when my query contained all the index dimensions it performed a set of range queries (smth like 17k for ~400 entries // but these numbers can be smth different from my head):
SELECT * FROM indexTable
WHERE partition=:partition_val
AND adapter_id IN :adapter_id_val
AND sort>=:sort_min AND sort<:sort_max;
Mb the differende is in the Index type? I used XZHierarchicalIndexFactory
for the tests
Ah just to clarify my words a little bit (in terms of language):
table was indexed with a spatialtemporal index
All ExplicitSpatialQueries
were
select * from indexTable;
All ExplicitSpatialTemporalQuery
were
SELECT * FROM indexTable
WHERE partition=:partition_val
AND adapter_id IN :adapter_id_val
AND sort>=:sort_min AND sort<:sort_max;
datastore.aggregateStatistics(VectorStatisticsQueryBuilder.newBuilder().factory().timeRange().build());
newBuilder()
for the datastore statistics queries or aggregations
IngestCallback
so its automatically updated on write (its the primary purpose of statistics really) ... a statistic can also implement DeleteCallback
if it can be inverted properly, some like extents would have to be recomputed, but others like counts are easy to just decrement
PATH
or similar) and what you expected to happen instead.
org.locationtech.geowave.core.cli.GeoWaveMain
,the program arguments is store add raster --gwNamespace geowave.raster -t hbase --zookeeper node24,node25,node26:2181
, when run ,the console output is Usage: geowave [options]
Options:
-cf, --config-file
Override configuration file (default is
<home>/.geowave/config.properties)
--debug
Verbose output
--version
Output Geowave build version information
Commands:
config
Commands that affect local configuration only
explain
See what arguments are missing and what values will be used for GeoWave commands
help
Get descriptions of arguments for any GeoWave command
util, utility
GeoWave utility commands
Error: Expected a command, got store
geowave-test
project, which includes most of the other GeoWave projects as dependencies.