1 min read

ブラウザでオフライン日本語インスタント全文検索を実現する

DuckDBFTS (Full Text Search) 拡張と Lindera を利用する事で、日本語全文検索を実現できますが、DuckDB-WasmLindera-Wasm を利用する事でブラウザで日本語全文検索を実現できます。Wasm なので完全オフラインで、利用できます。

さらに、クライアントのリソースということもあり一文字ずつ入力された値に対して Lindera-Wasm で形態素解析して、SQL を実行することでインスタント検索も実現できます。

DuckDB-Wasm (FTS 拡張) + Lindera-Wasm

技術的には特に難しいことはしておらず、DuckDB-Wasm の FTS 拡張に Lindera-Wasm で形態素解析した結果を引数として渡して実行しているだけです。


デモサイトを用意しておきました​、もし良ければ試してみてください。
DuckDB-Wasm (FTS Extension) + Lindera-Wasm

またソースコードも GitHub にて Apache-2.0 にて公開しています。
https://github.com/voluntas/duckdb-wasm-fts-lindera