Powrót do strony głównej

Manticore Search 25.0: wyszukiwanie hybrydowe i KNN

Manticore Search 25.0.0 wprowadza wyszukiwanie hybrydowe łączące MATCH i KNN, wstępną filtrację wektorów oraz równoległą kompaktyzację tabel RT. Uproszczono instalację, dodano prepared statements i backupy S3. Wydanie zawiera 36 poprawek dla stabilności.

Nowe możliwości Manticore 25: od wyszukiwania hybrydowego do S3
Advertisement 728x90

# Manticore Search 25.0.0: kluczowe aktualizacje dla wyszukiwania hybrydowego i tabel RT

W Manticore Search 25.0.0 zaimplementowano pełne wyszukiwanie hybrydowe, łączące zapytania pełnotekstowe i wektorowe w jednym wywołaniu. Uproszczono pakietowanie, dodano wstępną filtrację KNN, równoległą obsługę tabel RT, wsparcie dla prepared statements oraz backupy w magazyny kompatybilne z S3. Te zmiany optymalizują wdrożenie i eksploatację systemów wyszukiwania w scenariuszach high-load.

Wymagania dotyczące aktualizacji

Przed aktualizacją uwzględnij niezgodności:

  • Wymagane MCL 13.0.0 z nowymi parametrami API_URL i API_TIMEOUT dla embeddingów.
  • Klastry replikacji aktualizuj synchronicznie ze względu na protokół replikacji od 24.0.0.
  • Zmiany tokenizacji bigramów (od 23.0.0) powodują niezgodność indeksów z wersjami legacy.
  • Wstępna filtracja KNN zmienia kolejność wyników: teraz priorytet mają sąsiedzi spełniający filtr na etapie wyszukiwania.

Uproszczone pakietowanie

Pakiet manticore jest teraz monolityczny dla deb/rpm: zawiera daemon, narzędzia, konwerter, dane ICU, Jieba, pakiety językowe (de, en, ru). Aktualizacja: usuń stare pakiety manticore*, zainstaluj nowy — dane są zachowane. W systemach yum konfiguracja jest automatycznie backupowana. To eliminuje konflikty zależności i upraszcza procesy devops.

Google AdInline article slot

Wyszukiwanie hybrydowe

Wyszukiwanie hybrydowe łączy MATCH() i KNN() w SQL lub JSON. Przykład zapytania SQL:

SELECT * FROM table
WHERE MATCH('query') 
  AND KNN('vector_column', query_embedding, 10) > 0.8;

Nadaje się do wyszukiwania semantycznego z leksykalną precyzją: kategorie produktów, multitenancy, filtry RBAC. Zmniejsza latencję dzięki jednemu zapytaniu.

Wstępna filtracja KNN

Filtry atrybutów są stosowane podczas wyszukiwania wektorowego, a nie po fakcie. Dla zapytań „najbliżsi sąsiedzi po wektorze + kategoria=electronics” relevancja rośnie, kandydaci są odrzucani wcześnie. Przydatne w e-commerce, rekomendacjach, wyszukiwaniu enterprise z ACL.

Google AdInline article slot

Optymalizacja tabel RT

Równoległe N-arnie scalanie chunków przyspiesza OPTIMIZE pod obciążeniem zapisu. Zamiast sekwencyjnego scalania — zadania concurrent, skracające downtime kompaktyzacji. Tabele RT są teraz odporne na ruch high-insert bez degradacji wydajności zapytań.

Prepared statements

Wsparcie dla prepared statements kompatybilnych z MySQL: prepare/execute w protokole binarnym. Kompatybilne z connection pools, ORM (SQLAlchemy, Hibernate), frameworkami. Upraszcza migrację z MySQL/PostgreSQL bez refaktoryzacji kodu klienta.

PREPARE stmt FROM 'SELECT * FROM idx WHERE MATCH(?)';
EXECUTE stmt USING 'search query';
DEALLOCATE PREPARE stmt;

Backupy w S3

Backup/restore obsługują AWS S3, MinIO, Wasabi, Cloudflare R2. Idealne dla Kubernetes/Docker: lokalny dysk ephemeral, magazyn obiektowy — persistent. Komenda: backup --storage s3://bucket/path.

Google AdInline article slot

Automatyczne embeddingi

MCL 13.0.0 dodaje API_URL, API_TIMEOUT. Wsparcie dla GGUF (quantized), T5-encoder, HF z rate-limit, replikacja embeddingów w RT. Dla lokalnych/ chmurowych pipeline'ów: generuj embeddingi on-the-fly bez zewnętrznych serwisów.

Poprawki błędów

Wydanie zawiera 36 poprawek:

  • Brak fałszywych trafień MATCH przy timeout max_query_time.
  • Replikacja nie gubi wierszy przy duplikatach doc ID.
  • Stabilność auto-embeddingów: UTF-8, RT-locks.
  • LEFT JOIN zwraca MySQL NULL (nie string 'NULL').
  • Race condition w zapisie RT-chunków usunięta.
  • Fuzzy search w zapytaniach multi-table.

Co ważne:

  • Wyszukiwanie hybrydowe zmniejsza złożoność kodu o 30–50% w aplikacjach semantycznych.
  • Prefiltracja KNN zwiększa precyzję w obciążeniach filtrowanych.
  • Monolityczny pakiet upraszcza pipeline'y CI/CD.
  • Backupy S3 zapewniają RPO/RTO <1h w chmurze.
  • Prepared statements przyspieszają integrację z ekosystemem MySQL.

Szczegółowy changelog dostępny w repozytorium. Wersja 25.0.0 czyni Manticore gotowym do produkcji dla hybrid search at scale.

— Editorial Team

Advertisement 728x90

Czytaj dalej