blob: 0ee637f510f96e33f698e238901b13ad0143fd3f [file] [log] [blame]
#/**
# * Licensed to the Apache Software Foundation (ASF) under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The ASF licenses this file to You under the Apache License, Version 2.0
# * (the "License"); you may not use this file except in compliance with
# * the License. You may obtain a copy of the License at
# *
# * http://www.apache.org/licenses/LICENSE-2.0
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# */
# -------------------------------------------------------------------------------------
# Spatial search benchmark
# In order to use this, you'll need to first run 'ant geonames-files'.
# You may need more memory when running this: -Dtask.mem=1000M
# For docs on what options are available, see the javadocs.
### Spatial Context, Grid, Strategy config
doc.maker=org.apache.lucene.benchmark.byTask.feeds.SpatialDocMaker
# SpatialContext: see SpatialContextFactory.makeSpatialContext
#spatial.spatialContextFactory=org.locationtech.spatial4j.context.jts.JtsSpatialContextFactory
#spatial.geo=true
#spatial.distCalculator=haversine
#spatial.worldBounds=...
# Spatial Strategy: composite | rpt | ...
spatial.strategy=rpt
# Spatial Grid: (PrefixTree) see SpatialPrefixTreeFactory.makeSPT
#spatial.prefixTree=geohash (or quad)
spatial.prefixTree=quad
#27 quad or 11 geohash are very close
spatial.maxLevels=27
#spatial.maxDistErr (in degrees) to compute maxLevels -- defaults to 1 meter's worth
# RecursivePrefixTreeStrategy:
#spatial.docPointsOnly=true
#spatial.distErrPct=0.025
#spatial.pruneLeafyBranches=true
#codec.postingsFormat=Memory or (Direct)
### Source & Doc
content.source=org.apache.lucene.benchmark.byTask.feeds.LineDocSource
line.parser=org.apache.lucene.benchmark.byTask.feeds.GeonamesLineParser
docs.file=work/geonames/allCountries.txt
doc.tokenized=false
# Next 3 props convert doc points to circles with a random radius and then optionally bbox'es
#doc.spatial.radiusDegrees=0.0
#doc.spatial.radiusDegreesRandPlusMinus=0.0
#doc.spatial.bbox=false
### Directory
directory=FSDirectory
#directory=RamDirectory
compound=false
merge.factor=10
ram.flush.mb=64
### Query
query.maker=org.apache.lucene.benchmark.byTask.feeds.SpatialFileQueryMaker
query.file=work/geonames/allCountries.txt
query.file.line.parser=org.apache.lucene.benchmark.byTask.feeds.GeonamesLineParser
query.file.maxQueries=1000
# Next 3 props convert query points to circles with a random radius and then optionally bbox'es
query.spatial.radiusDegrees=0
query.spatial.radiusDegreesRandPlusMinus=3
query.spatial.bbox=false
#query.spatial.prefixGridScanLevel=scanLevel:-1:-2:-3:-4
#query.spatial.composite.optimizePredicates=optPred:true:false
query.spatial.score=false
#query.spatial.predicate=Intersects
# (defaults to spatial.distErrPct)
#query.spatial.distErrPct=0.0
### Misc
log.step.AddDoc = 100000
task.max.depth.log=1
# -------------------------------------------------------------------------------------
{ "Populate"
ResetSystemErase
CreateIndex
#1 million docs
[{ "MAddDocs" AddDoc} : 250000] : 4
ForceMerge(1)
CommitIndex
CloseIndex
RepSumByPref MAddDocs
} : 1
#set above round to 0 on subsequent runs if not changing indexing but experimenting with search
OpenReader
{"WarmJIT" Search > : 4000
CloseReader
{ "Rounds"
ResetSystemSoft
OpenReader
Search
{"RealQueries" Search > : 2000
CloseReader
NewRound
} : 1
#RepSumByName
RepSumByPrefRound RealQueries