Elasticsearch での電子メールと電話のあいまい一致
特定のドメインで終わる電子メール アドレスまたは特定のプレフィックスで始まる電話番号の一致を実現できますElasticsearch のカスタム アナライザーを使用します。
効果的なソリューションには、電子メールと電話のフィールドに合わせてアナライザーを調整することが含まれます。メールについては、N-gramを利用してトークン化するインデックスアナライザーを採用しており、メールのさまざまなセクションでのマッチングが可能です。電話の場合、エッジ Ngram アナライザーはさまざまな長さのプレフィックスにインデックスを付け、効率的なプレフィックス マッチングを容易にします。
実装の詳細:
電子メールのアナライザー定義:
電話のアナライザー定義:
インデックスとクエリの例:
PUT myindex { "settings": { "analysis": { "analyzer": { ... "index_email_analyzer": { ... }, "search_email_analyzer": { ... }, "index_phone_analyzer": { ... }, "search_phone_analyzer": { ... } ... } } }, "mappings": { "your_type": { "properties": { "email": { "type": "string", "analyzer": "index_email_analyzer", "search_analyzer": "search_email_analyzer" }, "phone": { "type": "string", "analyzer": "index_phone_analyzer", "search_analyzer": "search_phone_analyzer" } } } } } POST myindex { "query": { "term": { "email": "@gmail.com" } } }
このアプローチは、Elasticsearch の電子メールおよび電話フィールドの効率的でカスタマイズ可能なあいまい一致を提供し、柔軟な検索機能を可能にします。
以上がElasticsearch を使用して電子メールと電話番号のあいまい一致を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。