如何将geojson索引到SOLR

时间:2018-07-28 17:21:35

标签: indexing solr geojson

在架构中设置了所有必需的设置之后,我正在尝试将geo json索引为SOLR index:

fieldType name =“ location_rpt” class =“ solr.SpatialRecursivePrefixTreeFieldType”

<spatialContextFactory="com.spatial4j.core.context.jts.JtsSpatialContextFactory"
   distErrPct="0.025"
   maxDistErr="0.000009"
   distanceUnits="degrees"/>

所有JTS库均已根据需要添加。

solr ref guide中缺少有关此主题的文档。 唯一的信息在那里,但尚不清楚如何管理它:

https://lucene.apache.org/solr/guide/7_4/spatial-search.html#indexing-geojson-and-wkt

我试图了解POST请求的外观如何?

因为GEOJSON是层次结构json,所以我无法将其作为_rpt的字段值

任何帮助将不胜感激,我需要一个简单的POST请求示例。

1 个答案:

答案 0 :(得分:1)

location_rpt字段将仅索引您的Geometry数据。您可以使用包含名为location_rpt的几何数据的字段为整个GeoJSON编制索引。 这是在SOLR中建立索引的示例几何数据:

{
    "type":"1",
    "id":"131",
    "FenceCode":"Location2",
    "fence":["POLYGON Z ((73.7086164951324 18.5958565315978 0,73.7085199356079 18.5959073750869 0,73.7064063549042 18.5994867185663 0,73.7081658840179 18.5997002565659 0,73.7093031406402 18.5995884033614 0,73.7103760242462 18.5992935172882 0,73.7114810943603 18.5986834065498 0,73.712146282196 18.5981241364523 0,73.7126290798187 18.5975750331149 0,73.7128221988678 18.5972394690926 0,73.7107515335083 18.5965276644318 0,73.7088739871979 18.5959175437829 0,73.7086164951324 18.5958565315978 0))"],
    "name":"Location2",
    "_version_":1607394069145714688 }

我创建了一个单独的字段,称为solr.SpatialRecursivePrefixTreeFieldType类型的篱笆,而不是为了逻辑命名而将其命名为location_rpt。