無限ノック › SAA 練習問題一覧 › 問題SAA 高性能なアーキテクチャの設計
ある大手ECサイトでは、数百万件の商品を扱う検索機能をAmazon RDS for MySQLのLIKE句による部分一致クエリで実装しています。商品数の増加に伴い検索応答が数秒に悪化しています。今後はタイプミスを許容するあいまい検索、カテゴリやブランドによるファセット絞り込み、関連度スコアによるランキングを、数百万件の商品に対してサブ秒で提供したいと考えています。最も適切なソリューションはどれですか。
A Amazon OpenSearch Service に商品データをインデックス化し、全文検索とファセット検索を実行する
✓ 正解
OpenSearch Serviceは転置インデックスによる全文検索エンジンで、ファジー検索・ファセット絞り込み・関連度ランキングを数百万件でもサブ秒で提供でき、商品検索の全要件に最も適合します。
B Amazon RDS for MySQL のリードレプリカを追加し、LIKE句の検索クエリをレプリカへ分散する
RDSリードレプリカは読み取りを分散できますが、LIKE句の部分一致は実質フルスキャンで高コストのまま残り、あいまい検索やファセット・関連度ランキングも提供できないため不適切です。
C 商品データを Amazon DynamoDB へ移行し、Scan操作でキーワード検索を実行する
DynamoDBのScanはテーブル全体を走査するため大規模データで低速かつ高コストになり、全文検索・ファジー検索・ファセット機能も備えていないため、要件を満たせず不適切です。
D Amazon Athena を使い、Amazon S3 にエクスポートした商品データをSQLで検索する
Amazon Athenaは大量データのアドホックSQL分析向けで、クエリごとの起動レイテンシーが大きく、ユーザー向けのサブ秒インタラクティブ検索には適さないため不適切です。
解説 Amazon OpenSearch Serviceは、転置インデックスに基づく全文検索エンジンで、あいまい(ファジー)検索、ファセット集約、関連度スコアによるランキングを数百万件規模でもサブ秒で提供します。商品検索の要件すべてに最も適合します。
選択肢のRDSリードレプリカは負荷分散はできますが、LIKE句は依然フルスキャンに近く高コストで、あいまい検索や関連度ランキングを提供できません。
選択肢のDynamoDBのScanはテーブル全体を走査するため低速かつ高コストで、全文検索やファセット機能もありません。
選択肢のAmazon Athenaはアドホックな分析クエリ向けで、クエリごとのレイテンシーが大きく、ユーザー向けのサブ秒検索には不向きです。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでSAAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →