はじめに
Blobストレージに保存されているファイル内を検索をAzure Cognitive Searchを利用して行ってみたいと思います。
検索するのはCSVで保存されているものです。
サンプルデータ
サンプルデータはジェネレータを利用して作成しています。
以下で作成しています。
ここで10000行のデータを作成しています。
また、Cognitive SearchではCSVのヘッダー部分が日本語では認識されません。特殊文字やスペースも利用できません。
利用したサンプルデータを置いておきます。中身はすべて架空のものです。
Cognitive Searchの作成と設定
作成
BlobからAzure Searchを開きます。検索サービスを新しく作成します。ここからではなく個別に探して作成しても同じです。

作成は名前を指定するだけです。価格レベルは仕様に合わせて変更してください。検証ではFreeでもよいかと思います。

スケールは最小の構成にしています。SLAを99.9にしたい場合は警告に従います、

ネットワークは変更しません。

設定
Cognitive Search(検索サービス)を開き、Blobのデータをインポートします。
データのインポートを選択します。

データソースはBlobを選択します。

データソース名を入力します。
解析モードを区切りテキストを選択します。
サンプルデータには最初の行にヘッダーが含まれているのでチェックを入れます。区切り文字はそのまま「,」です。
既存の接続を選択します。

保存したコンテナーを選択すると接続文字列は自動的に入力されます。

コンテナー名も自動で入力されます。

コグニティブスキル は利用しないので省略します。

データのインポートはデフォルトで名前が付きます。自分で分かりやすい名前を付けるのも良いです。

フィールドが自動的に検出されます。
それぞれ取得可能と検索可能にチェックを入れます。これは検索を行えるようにするためです。

名前は自動的に入ります。
インデクサーを作成します。

検索
検索エクスプローラーを利用して検索します。

クエリ文字列には何も入力しないで検索します。
すべてのデータがJSON出力されます。

例えばクエリ文字列に「"工藤"」と入力すると工藤にヒットしたところが表示されます。

まとめ
Blob内の検索も簡単に行うことができます。つまり、ログを保存しているコンテナーを対象に検索を行うことができます。Log Analyiticsで保存するより安いですからこれで済ますのもひとつです。
