Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Advanced search for your Legacy application - N...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Elastic Co
May 13, 2016
Programming
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Advanced search for your Legacy application - Ncrafts
Talk given at NCrafts 2016, Paris
http://ncrafts.io/speaker/dadoonet#nc16-dpi01
Elastic Co
May 13, 2016
More Decks by Elastic Co
See All by Elastic Co
Les Vendredis noirs : même pas peur ! - Breizhcamp
elastic
15
1.1k
Confoo Montreal: Ingest node: enriching documents within Elasticsearch
elastic
16
1.1k
Elastic{ON} 2018 - Sipping from the Firehose: Scalable Endpoint Data for Incident Response
elastic
6
4.3k
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.9k
Elastic{ON} 2018 - Bigger, Faster, Stronger - Leveling Up Enterprise Logging
elastic
1
5.1k
Elastic{ON} 2018: Latest in Logstash
elastic
1
4.6k
Elastic{ON} 2018 - Lessons Learned from Workday's Search Application Journey from POC to Production
elastic
2
2.5k
Other Decks in Programming
See All in Programming
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
1
270
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
440
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
4
1.1k
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
670
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
270
【DroidKaigi 2026】「アクセシビリティを利用するとき、 アクセシビリティもまたこちらを利用している」 〜マルウェアによる攻撃と防衛について〜
halunoyo
0
450
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
320
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
160
AHC070解法紹介
eijirou
0
110
AIエージェント時代のコードレビューを設計する
nogu66
6
2.7k
Foundry Localでエージェント開発
seosoft
0
190
What We Talk About When We Talk About XP
m_seki
2
590
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
540
エンジニアに許された特別な時間の終わり
watany
108
250k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
350
Designing for Performance
lara
611
70k
Unsuck your backbone
ammeep
672
58k
WCS-LA-2024
lcolladotor
0
830
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
520
New Earth Scene 8
popppiees
3
2.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Transcript
‹#› Advanced search for your legacy application David Pilato Developer
| Evangelist @dadoonet
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