Azure Cognitive Search の機能Features of Azure Cognitive Search

Azure Cognitive Search は、フルテキスト検索エンジン、検索インデックスの永続的ストレージ、より多くのテキストと構造を抽出するためにインデックス作成時に使用される統合 AI、および API とツールを提供します。Azure Cognitive Search provides a full-text search engine, persistent storage of search indexes, integrated AI used during indexing to extract more text and structure, and APIs and tools. 次の表は、カテゴリ別の機能をまとめたものです。The following table summarizes features by category. Cognitive Search と他の検索テクノロジの比較については、「Azure Cognitive Search とは」を参照してください。For more information about how Cognitive Search compares with other search technologies, see What is Azure Cognitive Search?.

インデックス作成機能Indexing features

カテゴリ                           Category                            特徴Features
データ ソースData sources 検索インデックスは、JSON ドキュメントとして送信されていれば、すべてのソースからのテキストを受け入れることができます。Search indexes can accept text from any source, provided it is submitted as a JSON document.

インデクサーでは、サポートされている Azure データ ソースからのデータ インジェストが自動化され、JSON のシリアル化が処理されます。Indexers automate data ingestion from supported Azure data sources and handle JSON serialization. Azure SQL DatabaseAzure Cosmos DB、または Azure Blob Storage に接続して、プライマリ データ ストア内の検索可能なコンテンツを抽出します。Connect to Azure SQL Database, Azure Cosmos DB, or Azure Blob storage to extract searchable content in primary data stores. Azure Blob インデクサーは、"ドキュメント クラッキング" を実行して、Microsoft Office、PDF、HTML ドキュメントなどの 主要なファイル形式からテキストを抽出することができます。Azure Blob indexers can perform document cracking to extract text from major file formats, including Microsoft Office, PDF, and HTML documents.
階層データ構造と入れ子になったデータ構造Hierarchical and nested data structures 複合型とコレクションでは、検索インデックス内の事実上すべての種類の JSON 構造をモデル化できます。Complex types and collections allow you to model virtually any type of JSON structure within a search index. 一対多と多対多のカーディナリティは、コレクション、複合型、および複合型のコレクションを通じてネイティブに表現できます。One-to-many and many-to-many cardinality can be expressed natively through collections, complex types, and collections of complex types.
Linguistic AnalysisLinguistic analysis アナライザーは、インデックス作成および検索操作中のテキスト処理に使用するコンポーネントです。Analyzers are components used for text processing during indexing and search operations. 既定では、汎用の標準 Lucene アナライザーを使用するか、言語アナライザー、ユーザーが構成したカスタム アナライザー、または必要な形式でトークンを生成する別の定義済みアナライザーで既定をオーバーライドすることができます。By default, you can use the general-purpose Standard Lucene analyzer, or override the default with a language analyzer, a custom analyzer that you configure, or another predefined analyzer that produces tokens in the format you require.

Lucene または Microsoft の 言語アナライザーは、動詞の時制や名詞の性、不規則な複数形の名詞 (例: 'mouse' と 'mice')、二重複合語、(スペースを使用しない言語の) 改行などをインテリジェントに処理するために使用されます。Language analyzers from Lucene or Microsoft are used to intelligently handle language-specific linguistics including verb tenses, gender, irregular plural nouns (for example, 'mouse' vs. 'mice'), word de-compounding, word-breaking (for languages with no spaces), and more.

カスタム字句アナライザーは、発音照合や正規表現などの複雑なクエリ形式で使用されます。Custom lexical analyzers are used for complex query forms such as phonetic matching and regular expressions.

AI エンリッチメントとナレッジ マイニングAI enrichment and knowledge mining

カテゴリ                           Category                            特徴Features
インデックス作成中の AI 処理AI processing during indexing イメージおよびテキスト分析のための AI エンリッチメントをインデックス作成パイプラインに適用して、生のコンテンツからテキスト情報を抽出できます。AI enrichment for image and text analysis can be applied to an indexing pipeline to extract text information from raw content. 組み込みのスキルの例には、光学式文字認識 (スキャン済みの JPEG を検索可能にする)、エンティティ認識 (組織、名前、または場所を識別する)、キー フレーズ認識などがあります。A few examples of built-in skills include optical character recognition (making scanned JPEGs searchable), entity recognition (identifying an organization, name, or location), and key phrase recognition. カスタム スキルをコーディングしてパイプラインにアタッチすることもできます。You can also code custom skills to attach to the pipeline. Azure Machine Learning で作成されたスキルを統合することもできます。You can also integrate Azure Machine Learning authored skills.
検索以外のシナリオでの分析と使用のためのエンリッチされたコンテンツの格納Storing enriched content for analysis and consumption in non-search scenarios ナレッジ ストア は、インデックス作成パイプラインの代替出力です。Knowledge store is an alternative output of an indexing pipeline. トークン化された用語をインデックスに送信する代わりに、構成に応じて、Azure Blob Storage またはTable Storage に格納されているナレッジ ストアに、インデックス作成パイプラインによって作成された強化されたドキュメントを送信できます。Instead of sending tokenized terms to an index, you can send enriched documents created by the indexing pipeline to a knowledge store, resident in either Azure Blob storage or Table storage, depending on the configuration. ナレッジ ストアは、AI ベースのインデックス作成 (スキルセット) から作成されます。Knowledge stores are created from AI-based indexing (skillsets). ナレッジ ストアの目的は、下流の分析または処理をサポートすることです。The purpose of a knowledge store is to support downstream analysis or processing. ナレッジ ストアに新しい情報と構造を追加したら、それを機械学習処理に使用したり、Power BI から接続してデータを探索したりすることができます。With new information and structures in a knowledge store, you can attach it to a machine learning process or connect from Power BI to explore the data.

キャッシュされたコンテンツCached content インクリメンタル エンリッチメント (プレビュー) では、パイプラインに対する特定の編集によって変更されたドキュメントのみに処理が制限され、パイプラインの変更されていない部分に対してはキャッシュされたコンテンツが使用されます。Incremental enrichment (preview) limits processing to just the documents that are changed by specific edits to the pipeline, using cached content for the parts of the pipeline that do not change.

クエリとユーザー エクスペリエンスQuery and user experience

カテゴリ                           Category                            特徴Features
自由形式のテキスト検索Free-form text search フルテキスト検索は、大部分の検索ベース アプリの主な用途です。Full-text search is a primary use case for most search-based apps. クエリは、サポートされている構文を使用して作成できます。Queries can be formulated using a supported syntax.

単純なクエリ構文では、論理演算子、語句検索演算子、後置演算子、優先順位演算子を使用できます。Simple query syntax provides logical operators, phrase search operators, suffix operators, precedence operators.

完全な Lucene クエリ構文には、あいまい検索、近接検索、用語ブースト、正規表現の拡張機能を含む、簡単な構文でのすべての操作が含まれています。Full Lucene query syntax includes all operations in simple syntax, with extensions for fuzzy search, proximity search, term boosting, and regular expressions.
関連性Relevance シンプルなスコアリングは、Azure Cognitive Search の主な利点です。Simple scoring is a key benefit of Azure Cognitive Search. スコアリング プロファイルを使用して、ドキュメント自体の値の関数として、関連性をモデル化できます。Scoring profiles are used to model relevance as a function of values in the documents themselves. たとえば、新しい製品や割り引き製品を検索結果の上位に表示することが望ましい場合があります。For example, you might want newer products or discounted products to appear higher in the search results. あるいは、追跡記録し、個別に保存しておいた顧客の検索傾向に基づいてパーソナライズされたスコアリングのタグを利用し、スコアリング プロファイルを作成できます。You can also build scoring profiles using tags for personalized scoring based on customer search preferences you've tracked and stored separately.
地理空間検索Geo-search Azure Cognitive Search は、地理的な場所を処理、フィルター、表示する機能を備えています。Azure Cognitive Search processes, filters, and displays geographic locations. Azure Search により、ユーザーは物理的な場所に対する検索結果の近接度に基づいてデータを探索できます。It enables users to explore data based on the proximity of a search result to a physical location. 詳細については、このビデオを視聴するこのサンプルを確認してください。Watch this video or review this sample to learn more.
フィルターとファセットFilters and facets 1 つのクエリ パラメーターで ファセット ナビゲーションを有効にできます。Faceted navigation is enabled through a single query parameter. Azure Cognitive Search は、ファセット ナビゲーション構造を返します。これをカテゴリ一覧の背後のコードとして使用すると、自律フィルター処理 (たとえば、価格帯やブランド別のカタログ品目のフィルター処理) を実現できます。Azure Cognitive Search returns a faceted navigation structure you can use as the code behind a categories list, for self-directed filtering (for example, to filter catalog items by price-range or brand).

フィルターを使用することで、ファセット ナビゲーションをアプリケーションの UI に組み込み、クエリ形成を拡張し、ユーザーまたは開発者が指定した条件に基づいてフィルター処理することができます。Filters can be used to incorporate faceted navigation into your application's UI, enhance query formulation, and filter based on user- or developer-specified criteria. フィルターを作成するには、OData 構文を使用します。Create filters using the OData syntax.
ユーザー エクスペリエンスUser experience 検索バーでの先行入力クエリで、オートコンプリートを有効にすることができます。Autocomplete can be enabled for type-ahead queries in a search bar.

検索候補 も検索バーでの部分テキスト入力に使用できますが、結果はクエリ用語ではなくインデックス内の実際のドキュメントです。Search suggestions also works off of partial text inputs in a search bar, but the results are actual documents in your index rather than query terms.

シノニムは、ユーザーが代替用語を提供する必要がなく、クエリのスコープを暗黙的に拡張する同等の用語を関連付けます。Synonyms associates equivalent terms that implicitly expand the scope of a query, without the user having to provide the alternate terms.

ヒットの強調表示は、検索結果内の一致するキーワードにテキスト書式を適用します。Hit highlighting applies text formatting to a matching keyword in search results. 強調表示されるスニペットを返すフィールドを選択できます。You can choose which fields return highlighted snippets.

並べ替えは、インデックス スキーマを介して、複数のフィールドで利用でき、クエリ時に 1 つの検索パラメーターで切り替えることができます。Sorting is offered for multiple fields via the index schema and then toggled at query-time with a single search parameter.

ページングとスロットルは、Azure Cognitive Search が検索結果に適用する微調整された制御によって簡単に行うことができます。Paging and throttling your search results is straightforward with the finely tuned control that Azure Cognitive Search offers over your search results.

セキュリティ機能Security features

カテゴリ                           Category                            フィーチャーFeatures
データの暗号化Data encryption Microsoft によって管理される保存中の暗号化は内部ストレージ レイヤーに組み込まれており、取り消しはできません。Microsoft-managed encryption-at-rest is built into the internal storage layer and is irrevocable.

ユーザーが Azure Key Vault で作成および管理する ユーザー管理の暗号化キーは、インデックスとシノニム マップの補助的な暗号化に使用できます。Customer-managed encryption keys that you create and manage in Azure Key Vault can be used for supplemental encryption of indexes and synonym maps. インデックス付きコンテンツを完全に二重に暗号化する CMK での暗号化は、2020 年 8 月 1 日以降に作成されたサービスでは、一時ディスク上のデータにも拡張されています。For services created after August 1 2020, CMK encryption extends to data on temporary disks, for full double encryption of indexed content.
エンドポイント保護Endpoint protection 受信ファイアウォールの IP ルールのサポートを使用すると、検索サービスが要求を受け入れる IP 範囲を設定できます。IP rules for inbound firewall support allows you to set up IP ranges over which the search service will accept requests.

Azure Private Link を使用して プライベート エンドポイントを作成し、すべての要求が仮想ネットワークを経由するようにします。Create a private endpoint using Azure Private Link to force all requests through a virtual network.
アウトバウンド セキュリティ (インデクサー)Outbound security (indexers) プライベート エンドポイントを使用したデータ アクセスにより、インデクサーは Azure Private Link を介して保護されている Azure リソースに接続できます。Data access through private endpoints allows an indexer to connect to Azure resources that are protected through Azure Private Link.

信頼された ID を使用したデータ アクセスは、外部データ ソースへの接続文字列でユーザー名とパスワードを省略できることを意味します。Data access using a trusted identity means that connection strings to external data sources can omit user names and passwords. 検索サービスが以前に信頼されたサービスとして登録されていた場合、インデクサーがデータ ソースに接続するときに、リソースは接続を許可します。When an indexer connects to the data source, the resource allows the connection if the search service was previously registered as a trusted service.

ポータルの機能Portal features

カテゴリ                           Category                            特徴Features
プロトタイピングと検査のためのツールTools for prototyping and inspection インデックスの追加は、ポータルのインデックス デザイナーであり、属性付きのフィールドと他のいくつかの設定で構成される基本スキーマを作成するために使用できます。Add index is an index designer in the portal that you can use to create a basic schema consisting of attributed fields and a few other settings. インデックスを保存したら、SDK または REST API を使用して情報を移入し、データを提供できます。After saving the index, you can populate it using an SDK or the REST API to provide the data.

データのインポート ウィザードでは、インデックス、インデクサー、スキルセット、およびデータ ソースの定義が作成されます。Import data wizard creates indexes, indexers, skillsets, and data source definitions. データが Azure に存在する場合、このウィザードを使用すると、特に概念実証の調査や探究で時間と労力を大幅に節約できます。If your data exists in Azure, this wizard can save you significant time and effort, especially for proof-of-concept investigation and exploration.

検索エクスプローラーは、クエリをテストしたり、スコアリング プロファイルを調整したりするために使用します。Search explorer is used to test queries and refine scoring profiles.

デモ アプリの作成は、検索エクスペリエンスのテストに使用できる HTML ページを生成するために使用します。Create demo app is used to generate an HTML page that can be used to test the search experience.
監視と診断Monitoring and diagnostics 監視機能を有効にして、ポータルに常に表示される、ひとめで確認できるメトリックの先に進みます。Enable monitoring features to go beyond the metrics-at-a-glance that are always visible in the portal. 1 秒あたりのクエリ数、待ち時間、スロットルに関するメトリックが取得され、ポータル ページで報告されます。追加の構成は必要ありません。Metrics on queries per second, latency, and throttling are captured and reported in portal pages with no additional configuration required.

プログラミングProgrammability

カテゴリ                           Category                            フィーチャーFeatures
RESTREST サービス REST API は、データ プレーン操作で使用します (インデックス作成、クエリ、および AI エンリッチメントに関連するすべての操作を含む)。Service REST API is for data plane operations, including all operations related to indexing, queries, and AI enrichment. また、このクライアント ライブラリを使用して、システム情報と統計を取得することもできます。You can also use this client library to retrieve system information and statistics.

管理 REST API は、Azure Resource Manager によるサービスの作成とクリーンアップで使用します。Management REST API is for service creation and clean up through Azure Resource Manager. また、この API を使用して、キーを管理したり、サービスをプロビジョニングしたりすることもできます。You can also use this API to manage keys and provision a service.
Azure SDK for .NETAzure SDK for .NET Azure.Search.Documents は、データ プレーン操作で使用します (インデックス作成、クエリ、および AI エンリッチメントに関連するすべての操作を含む)。Azure.Search.Documents is for data plane operations, including all operations related to indexing, queries, and AI enrichment. また、このクライアント ライブラリを使用して、システム情報と統計を取得することもできます。You can also use this client library to retrieve system information and statistics.

Microsoft.Azure.Management.Search は、Azure Resource Manager によるサービスの作成とクリーンアップで使用します。Microsoft.Azure.Management.Search is for service creation and clean up through Azure Resource Manager. また、この API を使用して、キーを管理したり、サービスをプロビジョニングしたりすることもできます。You can also use this API to manage keys and provision a service.
Azure SDK for JavaAzure SDK for Java com.azure.search.documents は、データ プレーン操作で使用します (インデックス作成、クエリ、および AI エンリッチメントに関連するすべての操作を含む)。com.azure.search.documents is for data plane operations, including all operations related to indexing, queries, and AI enrichment. また、このクライアント ライブラリを使用して、システム情報と統計を取得することもできます。You can also use this client library to retrieve system information and statistics.

com.microsoft.azure.management.search は、Azure Resource Manager によるサービスの作成とクリーンアップで使用します。com.microsoft.azure.management.search is for service creation and clean up through Azure Resource Manager. また、この API を使用して、キーを管理したり、サービスをプロビジョニングしたりすることもできます。You can also use this API to manage keys and provision a service.
Azure SDK for PythonAzure SDK for Python azure-search-documents は、データ プレーン操作で使用します (インデックス作成、クエリ、および AI エンリッチメントに関連するすべての操作を含む)。azure-search-documents is for data plane operations, including all operations related to indexing, queries, and AI enrichment. また、このクライアント ライブラリを使用して、システム情報と統計を取得することもできます。You can also use this client library to retrieve system information and statistics.

azure-mgmt-search は、Azure Resource Manager によるサービスの作成とクリーンアップで使用します。azure-mgmt-search is for service creation and clean up through Azure Resource Manager. また、この API を使用して、キーを管理したり、サービスをプロビジョニングしたりすることもできます。You can also use this API to manage keys and provision a service.
Azure SDK for JavaScript/TypeScriptAzure SDK for JavaScript/TypeScript azure/search-documents は、データ プレーン操作で使用します (インデックス作成、クエリ、および AI エンリッチメントに関連するすべての操作を含む)。azure/search-documents is for data plane operations, including all operations related to indexing, queries, and AI enrichment. また、このクライアント ライブラリを使用して、システム情報と統計を取得することもできます。You can also use this client library to retrieve system information and statistics.

azure/arm-search は、Azure Resource Manager によるサービスの作成とクリーンアップで使用します。azure/arm-search is for service creation and clean up through Azure Resource Manager. また、この API を使用して、キーを管理したり、サービスをプロビジョニングしたりすることもできます。You can also use this API to manage keys and provision a service.

関連項目See also