es de investigação geográfica

A fim de facilitar a aprendizagem consulta localização ES, aqui preparou algumas coordenadas geográficas dos dados de teste, cada dados contém o nome da cidade e coordenadas geográficas dos dois campos. Primeiro, salve o seguinte em arquivo geo.json:

{ "Índice": { "_ índice": "geo", "_ id": "1"}}

{ "Cidade": "北京", "localtion": "40.019559,116.312282"}

{ "Índice": { "_ índice": "geo", "_ id": "2"}}

{ "Cidade": "乌鲁木齐", "localtion": "43.863737,87.53891"}

{ "Índice": { "_ índice": "geo", "_ id": "3"}}

{ "Cidade": "西安", "localtion": "34.43376,108.879774"}

{ "Índice": { "_ índice": "geo", "_ id": "4"}}

{ "Cidade": "郑州", "localtion": "34.76845,113.589482"}

{ "Índice": { "_ índice": "geo", "_ id": "5"}}

{ "Cidade": "杭州", "localtion": "30.345351,120.102125"}

{ "Índice": { "_ índice": "geo", "_ id": "6"}}

{ "Cidade": "济南", "localtion": "36.688506,117.158558"}

{ "Índice": { "_ índice": "geo", "_ id": "7"}}

{ "Cidade": "上海", "localtion": "31.298035,121.426731"}

{ "Índice": { "_ índice": "geo", "_ id": "8"}}

{ "Cidade": "武汉", "localtion": "30.632158,114.28858"}

{ "Índice": { "_ índice": "geo", "_ id": "9"}}

{ "Cidade": "广州", "localtion": "23.150725,113.221536"}

 

Em seguida, criar um índice:

 

geo PUT

{

"configurações": {

"number_of_shards": "1",

"Number_of_replicas": "0"

},

"mapeamentos": {

"propriedades": {

"cidade": {

"Type": "palavra-chave"

},

"Localização": {

"Type": "geo_point"

}

}

}

}

Em seguida, execute:

 

$ Onda -X POST "localhost: 9200 / _bulk bonita?" -H 'Content-Type: application / json' --data-binário @ geo.json

1

1. consulta raio (consulta geo_distance)

consulta geo_distance pode encontrar o ponto de centro geográfico do documento dentro de um raio específico. Como uma consulta dentro de 500 km da cidade de Tianjin, os resultados da pesquisa irá retornar a Pequim, Jinan, o comando é o seguinte:

 

{

"inquerir":{

"Bool": {

"devo":{

"Match_all": {}

},

"filtro":{

"Geo_distance": {

"Distância": "500 km",

"localização":{

"Lat": "38.993443",

"Lon": "117.158558"

}

}

}

}

}

}

Ordenar por distância de Tianjin:

 

{

"inquerir": {

"Bool": {

"devo": {

"Match_all": {}

},

"Filtro": {

"Geo_distance": {

"Distância": "500 km",

"Localização": {

"Lat": "38.993443",

"Lon": "117.158558"

}

}

}

}

},

"ordenar": [

{

"_Geo_distance": {

"Localização": {

"Lat": "38.993443",

"Lon": "117.158558"

},

"Unidade": "km"

}

}

]

}

2. Especifique a consulta dentro de um retângulo (query geo_bounding_box)

geo_bounding_box consulta configurados para consultar as coordenadas geográficas abrangidas pelo retângulo especificado. Consulta de um rectângulo definido pelos dois pontos, como mostrado na pontos Yinchuan e Nanchang feitas em ambos vertical (longitude), e as linhas paralelas (dimensão), respectivamente, a linha de intersecção irá formar uma área rectangular, pode consultar a Xian , Zhengzhou, Wuhan.

 

[Imagem despejo fora da cadeia falhar, a estação de origem pode ter um mecanismo de cadeia de segurança, recomenda-se para salvar as imagens enviadas diretamente para baixo (img-ZiJZ1UCp-1578904421240) (D: \ work \ ElasticSearch \ geo_bouding_box.png)]

Esquerda e direito cantos inquérito

 

{

"inquerir":{

"Bool": {

"devo":{

"Match_all": {}

},

"filtro":{

"Geo_bounding_box": {

"localização":{

"TOP_LEFT": {

"Lat": "38.532499",

"Lon": "106.193769"

},

"canto inferior direito":{

"Lon": "115.907542"

}

}

}

}

}

}

}

O canto inferior esquerdo e superior direito de inquérito

 

{

"inquerir": {

"Bool": {

"devo": {

"Match_all": {}

},

"Filtro": {

"Geo_bounding_box": {

"Localização": {

"canto superior direito": {

"Lat": "40.807062",

"Lon": "119.108671"

},

"inferior esquerdo": {

"Lat": "22,12604",

"Lon": "101.741623"

}

}

}

}

}

}

}

20

3. Pesquisa de Dados (consulta geo_polygon) em um polígono designado

consulta geo_polygon usado para encontrar ponto geográfico dentro de um determinado polígono. Por exemplo, um triângulo Hohhot, Chongqing, Xangai, os três compõem a consulta em mudar a posição da área triangular da cidade.

 

[Imagem despejo fora da cadeia falhar, a estação de origem pode ter um mecanismo de cadeia de segurança, recomenda-se para salvar as imagens enviadas diretamente para baixo (img-MXBETgbX-1578904421241) (D: \ work \ ElasticSearch \ geo_polygon.png)]

 

{

"inquerir":{

"Bool": {

"devo":{

"Match_all": {}

},

"filtro":{

"Geo_polygon": {

"localização":{

"pontos":[

{ "Lat": "40.835015", "lon": "111.712958"},

{ "Lat": "29.640695", "lon": "106.561715"},

{ "Lat": "31,23482", "lon": "121,50032"}

]

}

}

}

}

}

4 tipos de geo_shape consulta de dados (consulta geo_shape)

geo_shapequery geo_shape consulta para o tipo de dados geográficos, que compreende a relação entre a forma geográfica é: intersecção, compreendendo três disjuntos. Criar um novo índice para o teste, que tipo de campo configuração do local é do tipo geo_shape:

 

geoshape PUT

{

"configurações": {

"number_of_shards": "1",

"Number_of_replicas": "0"

},

"mapeamentos": {

"propriedades": {

"cidade": {

"Type": "palavra-chave"

},

"Localização": {

"Type": "geo_shape"

}

}

}

}

13

tipos geo_point de campos são: primeiro latitude, a longitude, mas o ponto é tipos geo_shape: primeiro longitude, latitude depois. Isso requer uma atenção especial.

 

POST geoshape / _doc / 1

{

"City": "Xi'an - Zhengzhou"

"localização":{

"Type": "cadeia de linhas",

"coordenadas": [

[108.953364,34.372762],

[113.626277,34.76845]

]

}

}

Consultar os dados contidos no formato retangular Yinchuan composição geográfica Nanchang, uma vez que o linear Xian e Zhengzhou composição caindo dentro da área retangular, que pode ser consultado.

 

{

"inquerir":{

"Bool": {

"devo":{

"Match_all": {}

},

"filtro":{

"Geo_shape": {

"localização":{

"forma":{

"Type": "envelope",

"coordenadas": [

[106.230564,38.50359],

[115.870747,28.704175]

]

},

"Relação": "dentro"

}

}

}

}

}

}

Fonte: https://blog.csdn.net/dwjf321/article/details/103960280

 

Publicado 277 artigos originais · Louvor obteve 65 · vista 380 000 +

Acho que você gosta

Origin blog.csdn.net/ailiandeziwei/article/details/104737068
Recomendado
Clasificación