検索

[更新:2025年11月28日]

search

高精度な全文検索や意味検索を実現するため、オブジェクトストレージとETL、AI検索を組み合わせます。必要な情報へ迅速にアクセスすることで、情報探索の効率化やナレッジ活用の向上を促し、業務スピードと生産性を大幅に高めます。

各機能のサービス対応

機能

対応サービス

データレイク

Azure Data Lake Storage Gen2

ETL/データ変換

Azure Data Factory

検索

Azure AI Search

システム構成要素

  • さくらのクラウド

    • オブジェクトストレージ

  • Addon

    • Azure Data Lake Storage Gen2

    • Azure Data Factory

    • Azure AI Search

構築手順

さくらのクラウドオブジェクトストレージでの事前準備

バケットの作成

  • さくらのクラウドのコントロールパネルにアクセスし、オブジェクトストレージからバケットを作成する。

    AddonObjectStorage
  • バケットを新規作成する。バケット名は「usecase-a4-bucket」とする。

    AddonCreateNewBucket

パーミッションの設定

  • 後ほど Azure Data Factoryでオブジェクトストレージの内容を読み込むためにパーミッションを設定する。

    AddonPermissionMenu
  • パーミッション名は「usecase-a4」を設定する。

    AddonPermissionName
  • 権限は「usecase-a4-bucket」の「READ/WRITE」を設定する。

    AddonReadWritePermission
  • 作成時に表示されるアクセスキーIDとシークレットアクセスキーを記録しておく。

    AddonSavePermissionValues
  • S3エンドポイントを利用するため、「サイト」から、「usecase-a4-bucket」のバケットを作成するサイトのS3エンドポイントの値を確認しておく。

    AddonS3Endpoint

オブジェクトストレージにデータをアップロードする

参考情報:オブジェクトストレージ サービス基本情報

オブジェクトストレージにサンプルデータをアップロードします。

  • 以下のサンプルデータをオブジェクトストレージの「usecase-a4-bucket」のバケットのメニューからアップロードする。

    AddonFileUpLoadMenu
  • 設定はprivateを選択してアップロードする。

    AddonFileUploadSettings

Addon でのリソース作成

データレイク機能

Addon の 「データレイク機能」API を利用して Azure Data Lake Storage Gen2を作成します。

#TOKEN='<your-api-token>'

#POST
curl -v \
  --location 'https://secure.sakura.ad.jp/cloud-test/zone/is1y/api/addon/1.0/analytics/datalake' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header "Authorization: Basic $TOKEN" \
  --data '{
    "location": "japaneast",
    "performance": 1,
    "redundancy": 1
  }'

ETL機能

Addon の 「ETL機能」API を利用して Azure Data Factory を作成します。

#TOKEN='<your-api-token>'

#POST
curl -v \
  --location 'https://secure.sakura.ad.jp/cloud-test/zone/is1y/api/addon/1.0/analytics/etl' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header "Authorization: Basic $TOKEN" \
   --data '{
    "location": "japaneast"
  }'

検索機能

Addonの「検索機能」APIを利用してAzure AI Searchを作成します。

#TOKEN='<your-api-token>'

#POST
curl -v \
  --location 'https://secure.sakura.ad.jp/cloud-test/zone/is1y/api/addon/1.0/analytics/search' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header "Authorization: Basic $TOKEN" \
  --data '{
    "sku": 1,
    "replicaCount": 1,
    "partitionCount": 1,
    "location": "japaneast"
  }'

RBACの設定

この操作を行うには、AzurePortalを操作するユーザーに対してユーザアクセス管理者ロールを付与します。

  • Azure Data Lake Storage Gen2 (データレイク用)のアクセス制御を開き、Azure Data FactoryのマネージドIDに対して「ストレージBLOBデータ共同作成者」を付与する。

    AddonDataFactoryRbac
  • Azure Data Lake Storage Gen2 (データレイク用)のアクセス制御を開き、自身のアカウントに対して「ストレージBLOBデータ共同作成者」を付与する。

    AddonUserBlobRbac
  • Azure AI SearchのシステムマネージドIDを作成する。Azure AI Searchを開き、「ID」のメニューへ遷移する。システム割り当てを選択し、「オン」にして保存する。

    AddonAISearchManagedId
  • Azure Data Lake Storage Gen2 (データレイク用)のアクセス制御を開き、Azure AI Searchに対して「ストレージBLOBデータ閲覧者」を付与する。

    AddonAISearchRBAC

データレイクのコンテナ作成

  • データレイク用で利用するAzure Data Lake Storage Gen2に対してコンテナを作成する。コンテナタブから新規にコンテナを作成する(例:「test」コンテナ)。

    AddonNewContainer AddonContainerName
  • 作成したコンテナを選択し、コンテナの認証方法はMicrosoft Entra ユーザーアカウントに設定する。

    AddonContainerCredential
  • ディレクトリを追加する。

    AddonCreateDirectory

Azure Data Factoryのパイプライン構築

オブジェクトストレージからデータを取得し、Azure Data Lake Storage Gen2にデータを変換して格納するフローを構築します。

  • Azure Data FactoryのData Studioにアクセスし、「新規」、「パイプライン」から新しくパイプラインを作成する。

    AddonNewADFPipeline
  • パイプラインのメニューでアクテビティ「データフロー」を選択し、キャプチャのようにドラッグする。

    AddonCreateNewDataFlow
  • データフローの設定を行う。「設定タブ」から「新規」を選択する。

    AddonCreateSourceSettings
  • 新規を選択すると「データフロー」の設定に移動する。ソースの追加と記載されてある部分の右側に表示されている矢印を選択し、「ソースの追加」を選択する。

    AddonAddSourceSettings
  • ソースの追加後、「ソースの設定」タブを開き、データセットの設定部分の「新規」を選択する。

    AddonCreateNewDataset
  • データセットは「Amazon S3」を選択して、「続行」を選択する。

    AddonSourceDatasetServiceSetting
  • データの種類は「DelimitedText」を選択して、「続行」を選択する。

    AddonSourceDatasetDataTypeSetting
  • 続いて、新規にソースのリンクサービスを作成する。キャプチャのように「新規」を選択する。

    A3SourceCreateLinkService
  • 認証方法として「アクセスキー」を選択する。

  • オブジェクトストレージでの事前準備で確認したバケットのパーミッションのアクセスキーID、シークレットアクセスキー、S3エンドポイントを入力する。

    AddonLinkServiceSettings
  • 「宛先ファイルパス」を選択し、ファイルパスにバケット名を入力し、「作成」を選択する。

    AddonDataFlowSourceFilePath
  • 入力後、ファイルパスにオブジェクトストレージのバケット名とファイル名を入力し、矢印を選択し、「指定されたパスから」を選択する。

    AddonDataFlowSourceFileImportSetting
  • サンプルファイルを選択してOKを押す。

    AddonDataFlowSourceSelectSampleFile
  • 「先頭行をヘッダーとして」からのチェックを外してOKを押す。

    AddonDataFlowSourceFileImportOption
  • データ内のインポートが不要な行をスキップするためのスキップ設定を行う。スキップ行数は「12」に設定する。

    AddonDataFlowSkipSetting
  • 続いて、シンク(格納先)の設定を行う。+ボタンを選択し、シンクを選択する。

    AddonDataFlowCreateSink
  • 「シンク」タブからシンク用のデータセットを新規に作成する。

    AddonNewSinkCreateDataSet
  • サービスはAzure Data Lake Storage Gen2を選択し、「続行」を選択する。

    AddonDataFlowSinkDataSetService
  • データの種類は「DelimitedText」を選択して、「続行」を選択する。

    AddonDataFlowDataSetDataType
  • シンクも新しくリンクサービスを作成する。

    AddonDataFlowCreateSinkLinkService
  • 認証はシステム割り当てマネージドIDにし、データレイク機能として作成したAzure Data Lake Storage Gen2を選択する。

    AddonDataFlowSinkLinkServiceOption
  • ファイルパスの設定でコンテナ名とフォルダ名を入力し、「先頭行をヘッダーとして」からチェックを外しOKを押す。

    AddonDataFlowSinkSourceFilePath
  • シンクへ格納時のファイル名を設定する。「設定」タブを開き、ファイルのオプションで「1つのファイルへの出力」を選択する。

    AddonDataFlow1FilenameOption
  • ファイルオプション変更時に以下のような警告が表示されるため、「単一パーティションの」を選択する。

    AddonSinglePartition
  • ファイル名を入力する(例ではtest.csvと入力)。

    AddonSinkFileName
  • シンクの設定まで終えたら「発行」を選択し、パイプラインの構築内容を保存する。

    AddonPublish
  • データフローの設定画面から「データフローのデバッグ」のトグルを選択してデバッグを有効化する。

    AddonDebugEnable
  • デバッグフローが有効になったら、パイプラインの設定画面から「デバッグ」を実行する。

    AddonDebug