anitnilay20 / anitnilay20/thoth

[Future] Tantivy: embedded full-text search for local files

未关闭
#151 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
feature future priority:low size:large
主要语言
Rust
星标
70
派生
5
平均合并
10 小时 33 分钟
30 天内合并 PR
2

描述

## Idea

Embed [Tantivy](https://github.com/quickwit-oss/tantivy) — a pure-Rust full-text search engine — as a local search index over opened files. This would complement DuckDB (#147 epic): DuckDB handles structured queries (`price > 100`, `GROUP BY status`), Tantivy handles unstructured text search (`'connection refused' AND host:prod`).

Seshat already provides this capability against remote Elasticsearch. Tantivy would bring equivalent power to local files with no external server.

## What it enables

- BM25-ranked full-text search over large log files or document collections
- Fuzzy matching, phrase queries, field-boosting
- Instant results on indexed files (index built once per file, persisted)
- Useful when DuckDB `WHERE message LIKE '%error%'` is too slow or too literal

## Relationship to DuckDB

These are complementary, not competing. A query bar could route automatically:
- Structured expressions → DuckDB SQL
- Free-text phrases → Tantivy

## Explore before committing

- Index persistence strategy (where to store per-file indices)
- Re-index on file change
- Memory footprint for large files
- Whether DuckDB FTS extension covers enough of the use case to make Tantivy unnecessary

## Not prioritised yet

Parking here for future consideration. Revisit once the DuckDB query engine is shipped and actual user feedback shows demand for full-text search beyond what DuckDB's `LIKE` / FTS extension can provide.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。