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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
sgruhier
June 19, 2013
Technology
200
2
Share
Maptimize - ElasticSearch
Presentation of maptimize at ElasticSearch meetup in Paris - May 22th, 2013
sgruhier
June 19, 2013
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
大規模災害時でも高い信頼性を維持するアプリケーション基盤の実現/nikkei-tech-talk46
nikkei_engineer_recruiting
0
130
イベントストーミングとKiroの仕様駆動開発で実現する要件の認識合わせプロセス
syobochim
7
1k
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
950
AI Adaptable なテストを整える工夫 / Ways to Make Your Tests AI-Adaptable
bitkey
PRO
2
200
テストコードのないプロジェクトにテストを根付かせる
tttol
1
240
Javaで学ぶSOLID原則
negima
1
260
「速く作る」から「正しく作る」へ ─ 生成AI時代の開発フロー改革の ロードマップと実行 ─
starfish719
0
160
最低限これだけ押さえれ大丈夫_Claude Enterprise/Team企業展開ガバナンス入門
tkikuchi
1
630
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
320
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
320
オンコールの負荷軽減のためのBits Assistant 活用方法 / How to Use Bits Assistant to Reduce the Workload on On-Call Staff
sms_tech
1
370
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
130
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
So, you think you're a good person
axbom
PRO
2
2k
Believing is Seeing
oripsolob
1
140
Raft: Consensus for Rubyists
vanstee
141
7.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
180
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
30 Presentation Tips
portentint
PRO
1
310
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
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