# Convert my address book into Geohash to display data in Kibana Tile Map Visualization

**URL:** <https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988>\
**Category:** Elasticsearch\
**Created:** [June 5, 2015, 5:53am UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988 "2015-06-05T05:53:43Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![rkhapre](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rkhapre/32/48333_2.png) [@rkhapre](https://discuss.elastic.co/u/rkhapre)\
**Post date:** [June 5, 2015, 5:53am UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988/1 "2015-06-05T05:53:43Z")

</div>

Hi All

I have a Elastic Data store which hold the mapping like this

Address1, Address2, City,POSTAL\_CODE, Country

Now I want to show this data in Kibana Tile Map, how can i convert my Address database to Geohash columns.(mappings)

Any clue will be greatly appreciated

Regards  
Ritesh

---

<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:** [June 5, 2015, 8:52am UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988/2 "2015-06-05T08:52:10Z")

</div>

You need to find a way to provide geo point coordinates (lat, lon). Kibana can not guess that for you.

---

<div class="post-metadata">

**Author:** ![vikas\_gopal](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vikas_gopal/32/47661_2.png) [@vikas\_gopal](https://discuss.elastic.co/u/vikas_gopal)\
**Post date:** [June 10, 2015, 3:44pm UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988/3 "2015-06-10T15:44:21Z")

</div>

Hi Ritesh,

I achieved this by downloading GeoLiteCity.dat from "[http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz](http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz)" . It is a database which will assign (Lat,Log) to your IPs.Once downloaded and unzipped you need to create a logstash conf file , something like

filter {  
geoip {  
source =\> "clientip"  
target =\> "geoip"  
database =\> "E:/Geo\_database/GeoLiteCity.dat"  
add\_field =\> ["[geoip][coordinates]", "%{[geoip][longitude]}" ]  
add\_field =\> ["[geoip][coordinates]", "%{[geoip][latitude]}" ]  
}  
mutate {  
convert =\> ["[geoip][coordinates]", "float"]  
}

}

In your case clientip would be Address1 or address2 . Now , in kibana in the Aggregation drop-down, select Geohash and In the Field drop-down, select geoip.location.

Take some help from "[https://www.digitalocean.com/community/tutorials/how-to-map-user-location-with-geoip-and-elk-elasticsearch-logstash-and-kibana](https://www.digitalocean.com/community/tutorials/how-to-map-user-location-with-geoip-and-elk-elasticsearch-logstash-and-kibana)". A very nice tutorial by Mitchell Anicas.

Hope this will help you to start .

---

<div class="post-metadata">

**Author:** ![Olalekan\_Elesin](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/olalekan_elesin/32/827_2.png) [@Olalekan\_Elesin](https://discuss.elastic.co/u/Olalekan_Elesin)\
**Post date:** [May 17, 2016, 4:58am UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988/4 "2016-05-17T04:58:29Z")

</div>

> [@vikas\_gopal](#):
>
> [http://geolite.maxmind.com/download/](http://geolite.maxmind.com/download/)

I would love to do something similar. I have a City field in my elasticsearch documents and I would love to generate lat and lon from the city field so I can view in Kibana. How is this possible?

Sample document:  
`{ "name" : "Lekan", "city" : "Abeokuta" }`

---

<div class="post-metadata">

**Author:** ![Mark\_Harwood](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mark_harwood/32/10538_2.png) [@Mark\_Harwood](https://discuss.elastic.co/u/Mark_Harwood)\
**Post date:** [May 17, 2016, 7:03am UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988/5 "2016-05-17T07:03:05Z")

</div>

What you are trying to do is a form of enrichment called geocoding. Google it and you'll find a lot of options.  
There are online services eg Google's one or there are datasets you can download to help geocode locally eg Geonames.

---

<div class="post-metadata">

**Author:** ![vikas\_gopal](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vikas_gopal/32/47661_2.png) [@vikas\_gopal](https://discuss.elastic.co/u/vikas_gopal)\
**Post date:** [May 20, 2016, 12:00pm UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988/6 "2016-05-20T12:00:45Z")

</div>

You can also check [How to create line from source to destination in MAP](https://discuss.elastic.co/t/how-to-create-line-from-source-to-destination-in-map/2343)  
but this is again from Long , Lat fields to geo location . In your case you need from Country to long lat so i would go with Mark's idea.

---

<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:** [July 5, 2017, 10:50pm UTC](https://discuss.elastic.co/t/convert-my-address-book-into-geohash-to-display-data-in-kibana-tile-map-visualization/1988/7 "2017-07-05T22:50:08Z")

</div>


