Azure Search で複合データを利用して高度な検索アプリケーションを作成
データが単純であることはめったにありません。データによっては、単一の Excel ワークシートの行と列にうまく収まらない場合もあります。データの関係は多種多様で、たとえば 1 人の顧客に対して複数の所在地と電話番号が存在したり、1 冊の書籍に対して複数の著者とジャンルが登録されていたりといったケースがあります。もちろん、通常はこのケースよりもさらに関係は複雑です。データを理解するために AI を活用し始めても、新しいインサイトを入手することで関係が複雑になるばかりです。そのため、データを検索できるようにデータ構造のフラット化をお客様に行っていただくのは、多くの場合、現実的ではありません。この件に関してお客様から同じ悩みを抱えているという声が続出し、ほどなくして Azure Search における最もご要望の多い機能 (英語) になりました。これにお応えして、今回 Azure Search での複合型のサポートの一般提供開始を発表いたします。今回の記事では、Azure Search で複合型を利用することのメリットと、この機能を使用して作成できるソリューションについてご説明します。 Azure Search は、開発者が独自のクラウド検索ソリューションを作成できる PaaS (サービスとしてのプラットフォーム) です。 複合データとは 複合データとは、下部構造が階層化またはネスト化されていて、表形式の行セットにきれいに分割できないデータを指します。たとえば、1 冊の書籍に複数の著者がいて、それぞれの著者に複数の属性があるという場合は、単一行のデータとして表すことはできません。ただし、著者をオブジェクトのコレクションとしてモデル化する方法があれば話は別です。複合型はこの機能を提供するもので、文字列や整数などの単純なフィールド構造でデータをモデル化できない場合に使用できます。 複合型の活用方法 Microsoft Build 2019 では、複合型を利用して効果的な検索アプリケーションを作成する方法 (英語) のデモを行いました。このセッションでは、Stack Exchange が提供する多数のオンライン コミュニティの 1 つである Travel Stack Exchange サイトを取り上げました。 Stack Exchange