Class SpatialDocMaker
java.lang.Object
org.apache.lucene.benchmark.byTask.feeds.DocMaker
org.apache.lucene.benchmark.byTask.feeds.SpatialDocMaker
- All Implemented Interfaces:
Closeable
,AutoCloseable
Indexes spatial data according to a configured
SpatialStrategy
with optional shape
transformation via a configured SpatialDocMaker.ShapeConverter
. The converter can turn points into
circles and bounding boxes, in order to vary the type of indexing performance tests. Unless it's
subclass-ed to do otherwise, this class configures a SpatialContext
, SpatialPrefixTree
, and RecursivePrefixTreeStrategy
. The Strategy is made available to a
query maker via the static method getSpatialStrategy(int)
. See spatial.alg for a listing
of spatial parameters, in particular those starting with "spatial." and "doc.spatial".-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
Converts one shape to another.Nested classes/interfaces inherited from class org.apache.lucene.benchmark.byTask.feeds.DocMaker
DocMaker.DocState
-
Field Summary
FieldsFields inherited from class org.apache.lucene.benchmark.byTask.feeds.DocMaker
BODY_FIELD, bodyValType, BYTES_FIELD, config, DATE_FIELD, DATE_MSEC_FIELD, ID_FIELD, indexProperties, NAME_FIELD, reuseFields, source, TIME_SEC_FIELD, TITLE_FIELD, valType
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic SpatialStrategy
getSpatialStrategy
(int roundNumber) Looks up the SpatialStrategy from the given round --Config.getRoundNumber()
.protected SpatialStrategy
makeCompositeStrategy
(Config config, Map<String, String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx) Creates aDocument
object ready for indexing.makeDocument
(int size) Same asDocMaker.makeDocument()
, only this method creates a document of the given size input bysize
.protected RecursivePrefixTreeStrategy
makeRPTStrategy
(String spatialField, Config config, Map<String, String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx) protected SerializedDVStrategy
makeSerializedDVStrategy
(String spatialField, Config config, Map<String, String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx) makeShapeConverter
(SpatialStrategy spatialStrategy, Config config, String configKeyPrefix) Optionally converts points to circles, and optionally bbox'es result.static org.locationtech.spatial4j.shape.Shape
makeShapeFromString
(SpatialStrategy strategy, String name, String shapeStr) protected SpatialStrategy
makeSpatialStrategy
(Config config) Builds a SpatialStrategy from configuration options.protected SpatialStrategy
makeSpatialStrategy
(Config config, Map<String, String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx) void
setConfig
(Config config, ContentSource source) Set the configuration parameters of this doc maker.Methods inherited from class org.apache.lucene.benchmark.byTask.feeds.DocMaker
close, getDocState, resetInputs
-
Field Details
-
SPATIAL_FIELD
- See Also:
-
-
Constructor Details
-
SpatialDocMaker
public SpatialDocMaker()
-
-
Method Details
-
getSpatialStrategy
Looks up the SpatialStrategy from the given round --Config.getRoundNumber()
. It's an error if it wasn't created already for this round -- when SpatialDocMaker is initialized. -
makeSpatialStrategy
Builds a SpatialStrategy from configuration options. -
makeSpatialStrategy
protected SpatialStrategy makeSpatialStrategy(Config config, Map<String, String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx) -
makeRPTStrategy
-
makeSerializedDVStrategy
-
makeCompositeStrategy
protected SpatialStrategy makeCompositeStrategy(Config config, Map<String, String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx) -
setConfig
Description copied from class:DocMaker
Set the configuration parameters of this doc maker. -
makeShapeConverter
public static SpatialDocMaker.ShapeConverter makeShapeConverter(SpatialStrategy spatialStrategy, Config config, String configKeyPrefix) Optionally converts points to circles, and optionally bbox'es result. -
makeDocument
Description copied from class:DocMaker
Creates aDocument
object ready for indexing. This method uses theContentSource
to get the next document from the source, and creates aDocument
object from the returned fields. IfreuseFields
was set to true, it will reuseDocument
andField
instances.- Overrides:
makeDocument
in classDocMaker
- Throws:
Exception
-
makeShapeFromString
public static org.locationtech.spatial4j.shape.Shape makeShapeFromString(SpatialStrategy strategy, String name, String shapeStr) -
makeDocument
Description copied from class:DocMaker
Same asDocMaker.makeDocument()
, only this method creates a document of the given size input bysize
.- Overrides:
makeDocument
in classDocMaker
- Throws:
Exception
-