vcaesar/riot

Go Open Source, Distributed, Simple and efficient Search Engine

解決する課題

Riotは、Goで記述された高速でモダンなテキストインデックスおよび検索エンジンです。外部の検索サーバーを必要とせずに、Goアプリケーションに全文検索機能を統合する方法を提供します。

仕組み

開発者がさまざまなフィールドタイプ(テキスト、数値、日付、ブール値、IP、地理座標、ベクトル)を含むドキュメントのインデックスを作成できるようにするライブラリとして機能します。ターム、フレーズ、マッチ、プレフィックス、正規表現、あいまい検索など、幅広いクエリタイプをサポートし、複雑なブール論理や範囲クエリも可能です。CJK(中国語、日本語、韓国語)テキストについては、gse トークナイザーを統合したラッパーを提供し、言語固有のインデックス作成を最適化しています。

対象ユーザー

アプリケーションプロセス内でドキュメントのインデックス作成とクエリを行うための、高性能な組み込み検索エンジンを必要とするGo開発者。

ハイライト

  • 多様なフィールドサポート: テキスト、数値、日付、ブール値、IP、地理座標、ベクトルフィールドを処理します。
  • 高度なクエリ: KNN、あいまい検索、正規表現、地理的バウンディングボックスをサポートします。
  • BM25 類似度: スコアリングと類似度計算にBM25を使用し、プラグイン可能なインターフェースを備えています。
  • 組み込み集計: バケット(ターム、数値/日付範囲)およびメトリクス(最小値、最大値、カウント、合計、平均、カーディナリティ推定、分位点近似)が含まれています。
  • CJKサポート: gse パッケージを通じて、中国語および日本語テキストを専用サポートしています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト