GeoServer ImageMosaic PostGIS 인덱스 업데이트


11

매뉴얼에 따라 ImageMosaic 스토리지를 생성 한 GeoServer를 사용 합니다. 새 데이터 스토어를 생성하면 모든 *.tif파일이 DB (PostgreS with PostGIS)에 인덱스됩니다. 데이터 폴더에 새 geotiff를 넣거나 DB의 모든 geotiff 파일을 다시 인덱싱 할 때 DB에서 새 인덱스 항목을 만들려면 어떻게해야합니까?

내 설정 파일 :

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

indexer.properties :

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를 수행하는 가장 좋은 방법은 curl명령으로 REST를 사용하는 것 입니다.

기존의 전체 ImageMosaic을 다시 색인화하려면 다음 명령과 같은 것을 사용하십시오 (올바른 사용자 이름, 비밀번호, 작업 공간 이름, ImageMosaic 저장소 이름 및 granules 디렉토리의 경로를 설정해야 함).

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.imagemosaicURL 끝에서 지정됨)에 이미 있다고 가정합니다 .

더 많은 예제는 GeoServer docs에 있습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.