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
Meilisearch
Search
Loulier Guillaume
June 21, 2023
Programming
1
120
Meilisearch
Loulier Guillaume
June 21, 2023
Tweet
Share
More Decks by Loulier Guillaume
See All by Loulier Guillaume
K6, stresser son application en douceur
guikingone
1
29
Need to search through your data? Heard about Meilisearch?
guikingone
1
150
Switching off legacy code using one Symfony command at a time
guikingone
1
89
SQLite en production ? Et si vous réévaluiez vos options ?
guikingone
1
850
Dagger, la CI, autrement
guikingone
1
230
Rector, time to refactor your code easily
guikingone
2
310
N'ayez pas peur de refactoriser
guikingone
1
750
Cypress, the E2E must learn from the past
guikingone
1
90
Cypress, le E2E moderne doit encore apprendre du passé
guikingone
2
380
Other Decks in Programming
See All in Programming
詳解UIWindow
natmark
3
2.2k
Swift Concurrencyとレースコンディション
objectiveaudio
1
400
connect-go で面倒くささと戦う / 2024-08-27 #newmo_layerx_go
izumin5210
2
610
Rubyとクリエイティブコーディングの輪の広がり / The Growing Circle of Ruby and Creative Coding
chobishiba
1
240
Method Swizzlingを行うライブラリにおけるマルチモジュール設計
yoshikma
0
110
1人で挑むSwiftコンパイラ 〜型システム入門編〜
s_shimotori
0
320
2024 컴포즈 정원사
jisungbin
0
150
rails_girls_is_my_gate_to_join_the_ruby_commuinty
maimux2x
0
170
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
7
2.2k
月間4.5億回再生を超える大規模サービス TVer iOSアプリのリアーキテクチャ戦略 - iOSDC2024
techtver
PRO
1
690
【TID2024】模擬講義:プログラマと一緒にゲームをデザインしてみよう!
akatsukigames_tech
0
470
ドメイン駆動設計を実践するために必要なもの
bikisuke
3
310
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
The World Runs on Bad Software
bkeepers
PRO
64
11k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
354
29k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
157
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
363
22k
Testing 201, or: Great Expectations
jmmastey
35
7k
Building Your Own Lightsaber
phodgson
101
6k
Why You Should Never Use an ORM
jnunemaker
PRO
53
8.9k
Debugging Ruby Performance
tmm1
72
12k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
58k
Transcript
Meilisearch
Sommaire 01 - Morceler pour trouver 02 - Meilisearch 03
- Quid d’une démo ? 04 - Demain, peut-être 01
Morceler pour trouver
L’art du savoir
Chercher l’aiguille dans la charrette L’humanité morcelle son savoir depuis
sa naissance Le savoir devient une ressource à indexer, filtrer, regrouper, analyser L’apprentissage se construit en morcelant le contenu appris
Les pages jaunes, région PACA L’annuaire, cette invention merveilleuse Au
fond, tout n’est qu’index, document et recherche par mot-clé, structure, etc Optimiser le stockage optimise la recherche qui optimise le temps
Meilisearch
Se réinventer
Expérimenter Né pour une besoin spécifique chez LVMH Première itération
écrite en Go, réécrit en Rust, d’où sa rapidité (< 50ms) Open-source (MIT) et français SDK PHP et bien d’autres
KFC, bucket XXL Utilise un tokeniser puis des pipelines Autorise
la recherche par préfixes / sur plusieurs indexes Segmente, normalise et internationalise sa recherche, supporte les vecteurs Tolérant aux fautes et accents, large support des langues
Stocker n’est pas retenir Utilise LMDB et l’approche memory map
Majorité d’opération en asynchrone S’adapte à la RAM / aux threads disponible(s) Index d’environ 80 TiB ? Pas de soucis
Démontrer
Même pas peur Calquée sur symfony/demo Disponible via https://github.com/Guikingone/SymfonyMeiliSearch
Demain, c’est loin
Savoir se vendre Plus open-source qu’Elasticsearch / Algolia Tolérant à
la typo, support des langues automatique, filtres, tri, etc. Support large et varié (SDK, Cloud, etc) Configurable à souhait (env, CLI)
Vendre à perte Haute disponibilité via l’offre Cloud Bundle Symfony
peu extensible Tâches asynchrones Tri personnalisé limité
C’est tout