Оновлення індексу GeoServer ImageMosaic PostGIS


11

Я використовую GeoServer, де я створив сховище ImageMosaic, дотримуючись цього посібника . Коли я створюю нову сховище даних, усі *.tifфайли індексуються в БД (PostgreSQL з PostGIS). Як я можу створити новий запис індексу в БД, коли я поміщаю новий геотиф у свою папку даних або повторно встановлюю всі файли геотифів у БД?

Мої конфігураційні файли:

datastore.properties:

SPI=org.geotools.data.postgis.PostgisNGDataStoreFactory
host=localhost
port=5432
database=GeoServerRaster
schema=public
user=geoserver
passwd=*******
Loose\ bbox=true
Estimated\ extends=false
validate\ connections=true
Connection\ timeout=10
preparedStatements=true

властивості:

Caching=false
TimeAttribute=ingestion
ElevationAttribute=elevation
Schema=*the_geom:Polygon,location:String,ingestion:java.util.Date,elevation:Integer
PropertyCollectors=TimestampFileNameExtractorSPI[timeregex](ingestion),DoubleFileNameExtractorSPI[elevationregex](elevation)

timeregex.properties:

regex=[0-9]{8}T[0-9]{6}Z(\?!.\*[0-9]{8}T[0-9]{6}Z.\*)

elevationregex.properties:

regex=(?<=_)(\\d{1,5})(?=_)

файли в каталозі:

tc_10000_20140807T033115Z.tif
tc_10000_20140807T040046Z.tif
tc_10000_20140807T043115Z.tif
...

Відповіді:


5

IMHO найкращий спосіб зробити це через REST з curlкомандою.

Щоб перевстановити весь існуючий ImageMosaic, використовуйте щось на зразок наступної команди (не забудьте встановити правильне ім’я користувача, пароль, ім'я робочої області, назву магазину ImageMosaic та шлях до каталогу гранул):

curl -v -u username:password -XPOST -H "Content-type: text/plain" \
 -d "file:///path/to/your/image/mosaic/directory/" \
 "http://localhost:8080/geoserver/rest/workspaces/YOUR_WORKSPACE/coveragestores/YOUR_IMAGEMOSAIC_STORE/external.imagemosaic"

Це видалить усі гранули з поточного індексу, а потім додасть існуючі файли по одному. Це дуже трудомістко.

Я вважаю за краще додавати одну гранулу (тобто 1 растровий файл):

curl -v -u username:password -XPOST -H "Content-type: text/plain" \
 -d "file:///path/to/your/image/mosaic/directory/and/your/granule.tiff" \
 "http://localhost:8080/geoserver/rest/workspaces/YOUR_WORKSPACE/coveragestores/YOUR_IMAGEMOSAIC_STORE/external.imagemosaic"

Обидва приклади припускають, що растрові файли вже є у вказаному місці (це вказано external.imagemosaicв кінці URL-адреси).

Більше прикладів - у документах GeoServer .


Ваше посилання перейшло на docs.geoserver.org/stable/en/user/rest/… або, можливо, docs.geoserver.org/api/#/1.0.0/coveragestores.yaml
Дейв X
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.