diff --git "a/src/content/2024-11-29-\350\262\247\344\271\217\344\274\201\346\245\255\345\220\215\343\202\265\343\202\270\343\202\247\343\202\271\343\203\210\346\251\237\350\203\275\351\226\213\347\231\272.md" "b/src/content/2024-11-29-\350\262\247\344\271\217\344\274\201\346\245\255\345\220\215\343\202\265\343\202\270\343\202\247\343\202\271\343\203\210\346\251\237\350\203\275\351\226\213\347\231\272.md" index e2c2f649fd..58717c6c60 100644 --- "a/src/content/2024-11-29-\350\262\247\344\271\217\344\274\201\346\245\255\345\220\215\343\202\265\343\202\270\343\202\247\343\202\271\343\203\210\346\251\237\350\203\275\351\226\213\347\231\272.md" +++ "b/src/content/2024-11-29-\350\262\247\344\271\217\344\274\201\346\245\255\345\220\215\343\202\265\343\202\270\343\202\247\343\202\271\343\203\210\346\251\237\350\203\275\351\226\213\347\231\272.md" @@ -52,6 +52,10 @@ Algoliaでも直接APIをフロントエンドから叩くことでバックエ - Elasticsearchのような全文検索エンジンを構築し、サジェストしたい単語を登録しておく - フロントエンドから直接アクセスする +## データソースはどうする? + +[法人番号システム Web-API](https://www.houjin-bangou.nta.go.jp/pc/webapi/riyokiyaku.html) + ### フロントエンド実装 一からAutocompleteを作るのは大変なのでCSSフレームワークに用意されているAutocompleteを賢く使うことが重要です。 @@ -82,8 +86,10 @@ Algoliaでも直接APIをフロントエンドから叩くことでバックエ 先に答えを書きます。 -「ワイルドカードを使わず、nグラムフィルターを作って乗り切って」です。 +「ワイルドカードを使わず、[N-gram tokenizer](https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-ngram-tokenizer.html)を作って乗り切って」です。 + +どういうことかというと、ワイルドカード検索という仕組みがElasticsearchにあるのですが、こちらがかなり負荷の高い検索方式なので、細かく[N-gram tokenizer](https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-ngram-tokenizer.html)を使って転置インデックスを作ってあげるのがよさそうです。 + -どういうことかというと、ワイルドカード検索という仕組みがElasticsearchにあるのですが、こちらがかなり負荷の高い検索方式なので、細かくnグラムを使って転置インデックスを作ってあげるのがよさそうです。