інструменти / elasticsearch
Elasticsearch
Подається не як магія, а як упакована версія саме того механізму, який Віктор будує руками: інвертований індекс плюс конвеєр токенізації — «воно працює так само». Він протиставляє його Sphinx — занепалому попереднику, який спочатку вмів лише перебудовувати індекс із нуля по cron (Як працює повнотекстовий пошук: будуємо інвертований індекс на практиці). Його незмінна порада: у реальних проєктах беріть Elasticsearch (або вбудований FULLTEXT), але розумійте, що він робить під капотом.
У Q&A-продовженні він використовує офіційний довідник токенізаторів Elasticsearch як каталог стратегій індексації — n-gram, edge n-gram, letter, whitespace, keyword, pattern, URL, кастомні екстрактори хештегів/IP — щоб відповісти на питання про пошук за підрядком, утілюючи свою максиму «хочеш шукати інакше — мусиш інакше індексувати» (із застереженням, що n-грами роздувають індекс у 2–3 рази) (Як працює повнотекстовий пошук, частина 2: запитання-відповіді й подальші оптимізації).
Розібрано у відео
- Як працює повнотекстовий пошук: будуємо інвертований індекс на практиці
названий продуктизованим інвертованим індексом; Sphinx як повчальний попередник
- Як працює повнотекстовий пошук, частина 2: запитання-відповіді й подальші оптимізації
зоопарк токенізаторів як меню стратегій індексації
Повʼязане
повнотекстовий пошук, інвертований індекс, стиснення індексів, MySQL