グローバル検索とフィルタリング
1)グローバル検索の役割
グローバル検索は、製品の「チームパレット」です。エンティティ(ゲーム、プロバイダー、レポート、プロモーション)、アクション(「補充」「、ウォレットを開く」)およびヘルプへの単一のエントリーポイントです。良い検索:- 意図(エンティティとアクション)を理解します),
- 結果は≤ 1-2クリックで、
- 入力エラーおよび同義語に対して抵抗力がある、
- 安全であり、アクセス権を尊重します。
原則:関連性>完全性、最初のプロンプトの前の遅延<200ミリ秒、透明なフィルタとソート。
2)インテントモデル
クエリクラス:- エンティティ:ゲーム、プロバイダー、トーナメント、レポート、支払い方法。
- アクション:「入金」「出金」「レポート作成」「アフィリエイトを招待する」
- ナビゲーション:"wallet"、 "profile"、 "settings'。
- 参照:「RTP」、「限界」、「KYCレベル」。
UXパターン:結果タイプにバッジ(Game/Provider/Action/Help)を付けてください。
3)入力ポイントとフォームファクタ
ヘッダー(デスクトップ)+ホットキー'⌘/Ctrl+K'の行-パレットを開きます。
アイコン/タブバー検索(モバイル)-全画面モーダル。
コンテキストミニサーチ-カタログ内の現在のリストをフィルタリングします。
プレースホルダーヒント: 「ゲーム、プロバイダ、またはアクションを検索します……。」
4)ヒントと自動補完
150-250ミリ秒、人気/最近のトップNに表示されます。
結果セクション:最近、人気のある、エンティティ、アクション、ヘルプ。
ハイライト、diacriticおよびtranslit(実用的)。
エラー(ファジー)と同義語(「output「=「in」、 「cashout」)をサポートします。
キーボード-UX: 矢印/Enter/Tab;モバイル上-大規模なターゲット。
5)フィルタリングとファセット
ファセット-意味のある測定:- ゲームの場合:プロバイダ、メカニクス(メガウェイズ、クラスター)、ボラティリティ、RTP、カテゴリ(ライブ/スロット/クラッシュ)、タグ。
- レポートの場合:期間、オペレーター、地理、通貨、ステータス。
- プロモーション/トーナメントの場合:日付、賭け、参加者、賞品。
- 結果に対するチップフィルタ(選択したファセットは常に表示されます)。
- ドロップダウンリストで複数選択;オプションの横にカウンタがあります。
- すべてリセットしてプリセットとして保存します。
- ファセットと「結果を表示」ボタンを持つモバイルシートで。
6)高度な構文(オプション)
容易な照会DSLを支えて下さい:- 'provider:' Pragmatic Play'、'rtp:>=96'、'volatility: high'
- 'type: live'、 'tag:' buy bonus"'
- 'market: CA通貨:CAD'
- キー/値の自動補完プロンプト;poweruserユーザーは時間を節約します。
7)関連性
シグナル:- 一致精度(タイトル、エイリアス、同義語)。
- 人気/変換(kliki→igra/depozit)。
- 個人的なコンテキスト(履歴、お気に入り、最近)。
- 役割/管轄によるアクセシビリティ。
- 新鮮さ(新しいリリース/プロモーション-限られた時間をブースト)。
再注文時に説明を表示します(「7日以内の新規リリース」)。
8)空と境界の状態
結果はありません:フィルターを削除/緩め、現在のカテゴリで人気を示す、ヘルプへのリンク。
あまりにも一般的なリクエスト:明確化を求める(「カテゴリ」を表示)。
ネットワークエラー:オフラインテキスト、再試行、型付けされた文字列の保存。
アクセス制限:CTAの「詳細」で「あなたの地域/役割では利用できません」。
9)セキュリティ、権利、コンプライアンス
RBAC/テナンシー:インデックスと結果-利用可能なスペースからのみ。
ジオガード:アクセスできない市場/ゲームを非表示にします。
PII最小化:ヒントで個人データを表示しないでください。
監査と品質向上のためのクエリログ(非人格的)。
禁止されているキーワード(ブランドガイド、法的リスク)のクエリをフィルタリングします。
10)パフォーマンスとアーキテクチャ
最初のプロンプトへの時間≤ 200ミリ秒、最初の結果≤ 300-400ミリ秒です。
INDEX:差分更新、類義辞書、接頭辞のn-gram/edge-ngrams。
一般的なクエリとプロンプトをキャッシュします。
150-250ミリ秒のデバウンス、古いリクエストのキャンセル(中止/タイムアウト)。
カタログの最初の画面のSSR/ストリーミング。その後、クライアントフィルタリング。
長い結果リストを仮想化します。
既にロードされているセットのクライアントフィルタリング用のローカルインデックス(Web Worker)。
11)可用性とローカライズ
ロール'combobox'/'listbox'、正しい'aria-'、結果の数を読み取ります。
フォーカス管理:検索バーに戻り、Esc-閉じる、Enter-移動します。
RTL:チップの順序とアイコンの位置をミラーします。
用語とファセットはローカライズされています、数値フォーマットと通貨は地域ごとにあります。
12)テレメトリーとメトリック
イベント:- 'search_open'、 'search_type' (entity/action)、 'suggest_impression/click'、
- 'query_submit'、 'facet_apply/remove'、 'preset_save/apply'、
- 'result_click' (rank、 id)、 'no_results'、 'latency_ms'
- クエリ→結果クリックスルー(qCTR)。
- Time-to-Result(最初にクリック/Enter)。
- Zero-Result Rate (ZRR)と「空」の割合が保存されます。
- ファセットの採用%、プリセットの採用%。
- アクション成功%(意図「入金」、「出金」)。
- レイテンシp95プロンプトと全出力。
13) A/B実験
結果セクションの順序(アクションエンティティと)。
ランキング戦略(人気vs鮮度)。
グリッド/結果シート、ツールチップの数。
プレースホルダ/空の状態のフレーズのバリアント。
サイドパネル(デスクトップ)の上と上のチップフィルタ。
ガードレール:INP/CLS、 ZRR、苦情/エラー、RBACリーク=0。
14)スクリプト化されたパターン(iGaming)
ゲームを探す:名前/プロバイダ→ヒント(ゲーム、プロバイダ、タグ)を入力します。ファセット:カテゴリ、プロバイダ、ボラティリティ、RTP。クイックアクション:「デモ」、「プレイ」。
支払いアクション:'入金'、'出金'→最初のアクション。コンテキストが保存されたウォレットにDiplinkします。
演算子レポート:'ngr'、 'arpdau'→レポートエンティティ、期間/演算子/通貨ファセット;プリセット:「Today」、 「Last Week」。
ヘルプ/ポリシー:'RTP'、'制限'、'KYC'→記事/FAQ、「チャット」。
15) Antipatterns
型のない結果(ユーザーは自分が何を開いているのか理解していません)。
遅延>500ミリ秒の手がかり(ユーザーは「リズムを失う」)。
アクティブな条件を表示せずにフィルタします。
「戻る」時の状態をリセットします(行とファセットが失われます)。
権利のないエンティティを返し「、アクセスが拒否されました」をクリックして検索します。
タイプミス/シノニムを無視し、トランスライトなし。
16)実装チェックリスト(ステップバイステップ)
1.エンティティとアクションのディレクトリ(ID、エイリアス、同義語、権利)。
2.インデックスとランキング:ルール、スコープ、ブースト(新鮮さ/人気)。
3.ヒント/AutoComplete:デビュー、ハイライト、歴史/人気。
4.ファセットとチップ:マルチセレクト、カウンタ、「リセット」、プリセット。
5.空白/エラー:テキスト、代替、オフラインモード。
6.パフォーマンス:キャッシュ、リクエストのキャンセル、仮想化、P95目標。
7.A11u/locale: ARIAロール、キーボード、RTL、用語。
8.テレメトリーとA/B: qCTR、 ZRR、 Time-to-Result、実験。
9.セキュリティ:インデックスと発行のRBAC、監査ログ。
10.ドキュメント:ファセット辞書、サンプルクエリ、著作権ガイド。
17)ボトムライン
グローバルな検索とフィルタリングは1つのラインではなく、迅速な検索のエコシステムです。勝者は次の決定です:1.実用性によって意図およびランクを正確に理解します、
2.瞬時に動作(プロンプト≤ 200ms)、
3.透明なファセットを与え、コンテキストを保持します、
4.権利/地理を尊重し、理解可能な言語を話します、
5.品質(qCTR/ZRR/Time-to-Result)を測定し、A/Bを通じて継続的に改善します。