Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Maptimize - ElasticSearch
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
sgruhier
June 19, 2013
Technology
2
190
Maptimize - ElasticSearch
Presentation of maptimize at ElasticSearch meetup in Paris - May 22th, 2013
sgruhier
June 19, 2013
Tweet
Share
More Decks by sgruhier
See All by sgruhier
coffeescript.pdf
sgruhier
2
460
HTML5 Editor - LightningTalk at Paris JS
sgruhier
3
110
Other Decks in Technology
See All in Technology
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
280
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
610
AI駆動PjMの理想像 と現在地 -実践例を添えて-
masahiro_okamura
1
110
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.4k
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
110
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
450
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.3k
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
240
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
910
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
180
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
110
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Skip the Path - Find Your Career Trail
mkilby
0
55
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
0
110
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Marketing to machines
jonoalderson
1
4.6k
The Language of Interfaces
destraynor
162
26k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
240
Designing for humans not robots
tammielis
254
26k
Transcript
Maptimize Sébastien Gruhier Paris - 22/05/2013 Wednesday, June 19, 13
About Sébastien Gruhier http://xilinus.com - http://v3.maptimize.com twitter : @sgruhier skype:
sebgruhier email:
[email protected]
Wednesday, June 19, 13
Maptimize Wednesday, June 19, 13
Maptimize Clustering engine pour carte en ligne SASS Filtrage/Recherche en
temps-réel Supporte Google Map, OpenStreetMap (leaflet.js), Bing Maps, ... Wednesday, June 19, 13
Idée originale http://who-s-web.com algorithme simple pur ruby Wednesday, June 19,
13
Idée originale Avantages Rapidité de développement Test en live sur
un site => Feedback des utilisateurs Inconvénients Nb points très limités (~ 5000 points) Pas DU TOUT scalable Wednesday, June 19, 13
Maptimize V1 http://maptimize.com algorithme plus complexe mysql + ruby Wednesday,
June 19, 13
Maptimize V1 Avantages Implémentation simple SASS Inconvénients Nb points limités
(~ 50000 points) Performance linéaire en fonction du nombre de points Bulk update Wednesday, June 19, 13
Maptimize V2 http://v2.maptimize.com java (code propriétaire + spring, hibernate, ehcache)
version actuelle Wednesday, June 19, 13
Maptimize V2 Avantages Performance “scalabilité” WAR: installable chez le client
Inconvénients Nb points encore limités (~ 300000 points) Bulk update Wednesday, June 19, 13
Maptimize lab Tentative en différents langages MongoDB NodeJS ... Wednesday,
June 19, 13
maptimize V3 http://v3.maptimize.com Demo http://onemilliontweetmap.com Plugin ElasticSearch + [ruby] Wednesday,
June 19, 13
Maptimize V3 maptimize mapping curl -‐XPUT localhost:9200/maptitest/tweet/_mapping -‐d '
{ "tweet": { "properties": { "coordinates": { "type" : "multi_field", "fields" : { "coordinates" : {"type" : "geo_point"}, "maptimize" : {"type" : "maptimize" } } } } } } ' curl -‐XPUT localhost:9200/maptitest/tweet/1 -‐d ' { "coordinates": "37.41009903,-‐5.99576998", "text": "Another tweet in the wall!" } ' Wednesday, June 19, 13
Maptimize V3 response { "points":[ {
"lat":30.080961775000002, "lng":-‐85.630064475, "count":4, "sw_lat":30.0334303, "sw_lng":-‐85.8917727, "ne_lat":30.2235562, "ne_lng":-‐85.5428284 }, { "lat":30.352137, "lng":-‐87.281595, "count":1 }, { "lat":30.357684222736708, "lng":-‐86.19574103569968, "count":972, "sw_lat":30.2568577, "sw_lng":-‐86.3207397, "ne_lat":30.422594, "ne_lng":-‐85.9100089 }, { "lat":30.4591621, "lng":-‐84.3590897, "count":1 } ], "success":true } Wednesday, June 19, 13
Maptimize V3 Avantages Performance (non linéaire en fonction du nombre
de points) scalabilité Limite du nombre de points: inconnue :) Ajouts de fonctionnalités (facets, recherche/filtrage avancé) Wednesday, June 19, 13
Maptimize V3 Avantages API REST temps-réel ... Contraintes Certaines fonctionnalités
de la v2 difficiles à implémenter Maitriser le développement de plugins Wednesday, June 19, 13
Maptimize V3 Wednesday, June 19, 13
Maptimize V3 Wednesday, June 19, 13