検索に関する研究

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

xConnectクライアントAPIは、連絡先 ( client.Contacts)や インタラクション ( client.Interactions)を検索できます。インタラクション検索は行動検索とも呼ばれます。イベントやファセットを直接クエリすることはできません。以下の表に示されるように、コンタクトやインタラクションを中心にクエリを構成する必要があります。

クエリ要件

クエリ

すべてのロンドン住所を入手

AddressList面にロンドンの住所が含まれている連絡先をすべて取得しましょう

昨日に発生したすべてのページ訪問数を取得してください

昨日起こったすべてのインタラクションを取得し、イベントは PageViewEvent

過去1週間のすべての「ダウンロード」イベントを入手できます

過去1週間に起こったすべてのやり取りと DownloadEvent イベントの記録を取得してください

インデックス作成

!重要インデックス作成は処理サーバーではなく、専用の検索インデクサーによって行われます。これはバージョン8.2以前のバージョンからの大きな変更です。

インデックス作成やxConnect検索のアーキテクチャについての詳細は、以下をご覧ください:

同期探索および非同期探索

同期および非同期拡張メソッドの完全なリストについては 、xConnect Client APIの概要 を参照してください。

xConnectはSitecoreを使用していません。コンテンツ検索

xConnect検索はSitecore.ContentSearchに依存しません。xConnect検索とコンテンツSearchは別々のフレームワークで、APIやインデックス作成の仕組みが別々です。詳細については、検索およびインデックスの概要を参照してください。

Searchは基本的に大文字を区別せず、結果の検索を容易にしています。これはSolrスキーマレベルで設定されています。

参加のサポートは検索提供者によって異なります

Solrは連絡先間の接続やインタラクションのサポートです。Azure Search現在は接続をサポートしていません。

以下の例は、特定のメディアアイテムをダウンロードした連絡先を検索する方法を示しています。クエリはジョインを使用します。

var mediaItemId = Guid.Parse("bf34c300-0c0a-4aab-9055-97854f17d134");

var query = client.Contacts.Where(c => c.Interactions.Any(x => x.Events.OfType().Any(d => d.ItemId == mediaItemId)));

var results = await query.GetBatchEnumerator(10);

もし検索プロバイダーが参加をサポートしていない場合は、連絡先のInteractionsCache面を必ず使う必要があります:

var mediaItemId = Guid.Parse("bf34c300-0c0a-4aab-9055-97854f17d134");

var query = client.Contacts.Where(c => c.InteractionsCache().InteractionCaches.Any(x => x.DownloadEventItemIds.Any(f => f == mediaItemId)));

var results = await query.GetBatchEnumerator(10);

この記事を改善するための提案がある場合は、 お知らせください!