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
Demandez et votre application répondra, la recherche sémantique avec PHP et Meilisearch
guikingone
1
56
Building a semantic search experience using PHP and Meilisearch
guikingone
0
54
Symfony UX et le frontend
guikingone
1
34
K6, stresser son application en douceur
guikingone
1
44
Need to search through your data? Heard about Meilisearch?
guikingone
1
180
Switching off legacy code using one Symfony command at a time
guikingone
1
110
SQLite en production ? Et si vous réévaluiez vos options ?
guikingone
1
950
Dagger, la CI, autrement
guikingone
1
250
Rector, time to refactor your code easily
guikingone
2
330
Other Decks in Programming
See All in Programming
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
570
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
770
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.3k
令和7年版 あなたが使ってよいフロントエンド機能とは
mugi_uno
10
5.2k
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
DevinとCursorから学ぶAIエージェントメモリーの設計とMoatの考え方
itarutomy
0
150
テストコード書いてみませんか?
onopon
2
340
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
2.2k
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
7
1.4k
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
6
1.4k
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
RailsConf 2023
tenderlove
29
970
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
3
180
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
GraphQLとの向き合い方2022年版
quramy
44
13k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Code Review Best Practice
trishagee
65
17k
Making the Leap to Tech Lead
cromwellryan
133
9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
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