# Reconnaissance d'objet geo dans elasticsearch

**URL:** <https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478>\
**Category:** Discussions en français\
**Created:** [March 28, 2020, 9:17am UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478 "2020-03-28T09:17:07Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jalil](https://avatars.discourse-cdn.com/v4/letter/j/fbc32d/32.png) [@Jalil](https://discuss.elastic.co/u/Jalil)\
**Post date:** [March 28, 2020, 9:17am UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478/1 "2020-03-28T09:17:07Z")

</div>

Bonjour,  
Mon objectif est d'indexer une collection depuis mongodb vers ES afin d'exploiter les points geo sur la MAP kibana. J'utilise mongo-connector. Ma collection mongodb contient entre autre un objet comme suit :

```auto
"location": {
		"type": "geo_point",
		"coordinates": {
			"lat": 10.6421404,
			"long": 34.6872422
		}
	}

```

quand je lance mongo-connector, l'index et son mapping sont crées automatiquement et l'objet geo\_point n'est reconnu en tant que tel. le mapping obtenu pour cet objet est comme suit :

```auto
"location": {
              "properties": {
                "lat": {
                  "type": "float"
                },
                "long": {
                  "type": "float"
                },
                "name": {
                  "type": "text",
                  "fields": {
                    "keyword": {
                      "type": "keyword",
                      "ignore_above": 256
                    }
                  }
                },
                "type": {
                  "type": "text",
                  "fields": {
                    "keyword": {
                      "type": "keyword",
                      "ignore_above": 256
                    }
                  }
                }
              }
            },

```

Avec ce mapping, kibana Map ne reconnait pas l'index.

Qu'est ce que j'ai oublié, que faut-il faire ?

Sachant que mon objet source mongodb contient beaucoup de champ, j'ai pas trop envie de créer à la main un mapping avec les risque d'erreur.  
Merci d'avance

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [March 28, 2020, 12:46pm UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478/2 "2020-03-28T12:46:53Z")

</div>

Il faut créer l'index et le mapping avant d'insérer le tout premier document.  
Supprime ton index et recommence.

---

<div class="post-metadata">

**Author:** ![Jalil](https://avatars.discourse-cdn.com/v4/letter/j/fbc32d/32.png) [@Jalil](https://discuss.elastic.co/u/Jalil)\
**Post date:** [March 28, 2020, 2:20pm UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478/3 "2020-03-28T14:20:37Z")

</div>

J'ai créé un index et un mapping from scratch en mettant l'objet location comme suit :

```auto
 "location": {
              "properties": {
                "coordinates": {
                  "type": "geo_point"
                }
              }
            }

```

l'objet source dans mongodb est le suivant comme exemple :

```auto
"location": {
		"coordinates": {
			"lat": 10.6421404,
			"long": 34.6872422
		}
	}

```

Quand je lance la commande d'import des data via mongo-connector, j'obtiens l'erreur suivante :

```auto
Line 1: 2020-03-28 15:09:13,242 [DEBUG] elasticsearch:86 - < {"took":1745,"errors":true,"items":[{"index":{"_index":"stops","_type":"stop","_id":"5e70d49a2a907e356a367cf3","status":400,"error":{"type":"illegal_argument_exception","reason":"mapper [started_in.location.coordinates] of different type, current_type [geo_point], merged_type [ObjectMapper]"}}},{"index":{"_index":"mongodb_meta","_type":"mongodb_meta","_id":"5e70d49a2a907e356a367cf3","_version":29,"result":"updated","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":12675,"_primary_term":2,"status":200}},{"index":{"_index":"stops","_type":"stop","_id":"5e70d49a2a907e356a367cf4","status":400,"error":{"type":"illegal_argument_exception","reason":"mapper [location.coordinates] of different type, current_type [geo_point], merged_type [ObjectMapper]"}}},{"index":{"_index":"mongodb_meta","_type":"mongodb_meta","_id":"5e70d49a2a907e356a367cf4","_version":27,"result":"updated","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":1...

```

Merci d'avance

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [March 28, 2020, 2:59pm UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478/4 "2020-03-28T14:59:29Z")

</div>

Essaye de simuler from scratch sans MongoDB, ce qui se passe. Et si tu n'y arrives pas, partage le script que tu as rédigé.

---

<div class="post-metadata">

**Author:** ![Jalil](https://avatars.discourse-cdn.com/v4/letter/j/fbc32d/32.png) [@Jalil](https://discuss.elastic.co/u/Jalil)\
**Post date:** [March 30, 2020, 1:01pm UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478/5 "2020-03-30T13:01:06Z")

</div>

Oui si je fais un index manuellement en mappant l'objet en geo\_point est ça marche.

en ce qui concerne le script, en fait, je fais l'intégration des données en utilisant mongo-connector, et c'est lui qui se charge de créer le mapping automatiquement.  
Comme ma collection contient plusieurs dizaines de champs, je cherche un moyen simple et rapide de créer le mapping "pas manuellement" 🙂

J'ai essayé par le biais de logstash et c'est pareil, l'objet location est mappé comme "text"

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [March 30, 2020, 1:20pm UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478/6 "2020-03-30T13:20:33Z")

</div>

Un fous que le mapping est créé ça devrait être bon.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [April 27, 2020, 1:20pm UTC](https://discuss.elastic.co/t/reconnaissance-dobjet-geo-dans-elasticsearch/225478/7 "2020-04-27T13:20:45Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
