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
Advanced search for your Legacy application - J On The Beach
Search
Elastic Co
May 20, 2016
Programming
0
110
Advanced search for your Legacy application - J On The Beach
Talk given at J On The Beach 2016, Malaga - Spain
Elastic Co
May 20, 2016
Tweet
Share
More Decks by Elastic Co
See All by Elastic Co
Les Vendredis noirs : même pas peur ! - Breizhcamp
elastic
15
770
Confoo Montreal: Ingest node: enriching documents within Elasticsearch
elastic
16
810
Elastic{ON} 2018 - Sipping from the Firehose: Scalable Endpoint Data for Incident Response
elastic
6
4.2k
Elastic{ON} 2018 - A Security Analytics Platform for Today
elastic
3
11k
Elastic{ON} 2018 - The State of Geo in Elasticsearch
elastic
7
12k
Elastic{ON} 2018 - Reliable by design - Applying formal methods to distributed systems
elastic
5
4.7k
Elastic{ON} 2018 - Bigger, Faster, Stronger - Leveling Up Enterprise Logging
elastic
1
4.9k
Elastic{ON} 2018: Latest in Logstash
elastic
1
4.5k
Elastic{ON} 2018 - Lessons Learned from Workday's Search Application Journey from POC to Production
elastic
2
2.4k
Other Decks in Programming
See All in Programming
Some Quick Ideas To Improve Your Tests ( #jassttokyo )
teyamagu
PRO
2
2.3k
もうすぐ新年度、Babylon.jsがお勧めな3個の理由
hideg
0
160
フロントエンドパフォーマンス 入門
shouta2
7
1.5k
ONE WEDGE_Company_Information
1wedge
0
170
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
110
LPIXEL×CADDi_kaerururu
kaerururu
3
300
PHP 8.3で追加されたjson_validate()を徹底的に深掘りしてみよう
mashirou1234
1
720
Enhancing Applications with Accessibility API
kishikawakatsumi
3
890
MySQL のインデックスの種類をおさらいしよう! / overviewing indexes in MySQL
okashoi
0
170
オブジェクト指向は必要なのか / Is object-oriented needed?
kishida
27
19k
PHPでOfficeファイルを取り扱う! PHP Officeライブラリを プロダクトに組み込んだ話
hirobe1999
0
840
AppDeveloperCon 2024 EU: Building polyglot developer experiences in 2024
salaboy
0
380
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
272
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
39
4.3k
Faster Mobile Websites
deanohume
296
30k
Building a Modern Day E-commerce SEO Strategy
aleyda
15
6.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
12
1.4k
The Language of Interfaces
destraynor
150
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
19
1.6k
A designer walks into a library…
pauljervisheath
199
23k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
8
8.2k
Debugging Ruby Performance
tmm1
68
11k
Product Roadmaps are Hard
iamctodd
43
9.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.2k
Transcript
‹#› Advanced search for your legacy application David Pilato Developer
| Evangelist @dadoonet J On The Beach
2
our legacy platform 3 WEB APP HTTP / REST JDBC
DATABASE SQL
our legacy domain / database 4
our legacy application 5 demo time $ git clone https://github.com/dadoonet/legacy-search.git
$ git checkout 00-legacy $ mvn clean install jetty:run
Connecting with our app Architecture 6
DATABASE SQL ETL using a ETL 7 WEB APP HTTP
/ REST JDBC ELASTICSEARCH REST / JSON
think document! • Change your mindset: ‒ Forget SQL! ‒
Index what you want to find • A document ‒ A JSON object ‒ Core field types (string, numbers, booleans) ‒ Complex field types (arrays, objects) ‒ Additional field types (geo points, geo shapes) 8
Do It Yourself Direct Connection 9
DATABASE SQL direct connection 10 WEB APP HTTP / REST
JDBC ES-CLIENT ELASTICSEARCH REST / JSON
JSON document design 11 PUT /person/person/1 { "name":"Joe Pink", "dateOfBirth":"1971-12-26",
"address_id":"2", "marketing_id":"3" } PUT /person/address/2 { "city":"Paris", "country":"France" } PUT /person/marketing/3 { "cars":1000, "food":1500 }
JSON document design 12 PUT /person/person/1 { "name":"Joe Pink", "dateOfBirth":"1971-12-26",
"address":{ "city":"Paris", "country":"France" }, "marketing":{ "cars":1000, "food":1500 } }
direct connection 13 demo time $ git checkout 01-direct $
git checkout 02-bulk $ git checkout 03-mapping $ git checkout 04-aggs $ git checkout 05-compute $ mvn clean install jetty:run $ cat README.markdown
synchronous vs asynchronous 14
DATABASE SQL using brokers 15 WEB APP HTTP / REST
JDBC ES-CLIENT ELASTICSEARCH REST / JSON
ELASTICSEARCH REST / JSON using brokers 16 WEB APP HTTP
/ REST JDBC ES-CLIENT DATABASE SQL
ELASTICSEARCH REST / JSON using brokers 17 WEB APP HTTP
/ REST JDBC ES-CLIENT DATABASE SQL
‹#›
‹#›
‹#› thanks! David Pilato Developer | Evangelist @dadoonet https://www.elastic.co/subscriptions J
On The Beach