無限ノック › SAP 練習問題一覧 › 問題
SAPワークロードの移行とモダン化の加速

あるグローバルな保険会社が、レガシーなモノリシックアプリケーション(Java EE、オンプレミスのWebLogicサーバーで稼働)をAWSでマイクロサービスアーキテクチャへリアーキテクチャする計画を持っています。現在の構成と要件は以下の通りです: 【現在のシステム】 ・保険金請求処理システム:年間処理件数500万件、平均処理時間2分/件 ・相互依存するモジュール:顧客管理、ポリシー管理、請求評価、支払処理、不正検知の5モジュール ・データベース:Oracle Database(単一インスタンス、500GB) ・外部システム連携:銀行API(同期、REST)、規制当局レポーティングシステム(バッチ、SFTP)、再保険会社(非同期、EDI形式) ・EDI(Electronic Data Interchange:電子データ交換、企業間の標準的なデータフォーマット)を使用した再保険会社との連携は変更不可 【移行後の要件】 ・各マイクロサービスの独立したデプロイ・スケーリング ・請求評価モジュールは機械学習モデルによる自動評価を導入(現在は手動) ・支払処理は最終的一貫性(結果整合性)で許容されるが、重複支払いは絶対に防止 ・不正検知はリアルタイム(請求提出から1秒以内) ・規制当局へのレポーティングは毎日深夜にバッチ処理 ・再保険会社とのEDI連携は継続(フォーマット変換はAWS側で対応) ・すべてのサービス間通信は暗号化・認証済みであること ・各マイクロサービスのSLA:99.99%可用性 この移行を最もよく実現するアーキテクチャはどれですか?

A
Amazon EKSをマイクロサービスのランタイムとして使用し、各モジュールをKubernetesのDeploymentとしてデプロイする。サービス間通信はAWS App Mesh(Envoyサイドカープロキシ)でmTLS(相互TLS認証)と可観測性を実装する。データベースはサービスごとに分離し、顧客管理・ポリシー管理はAmazon Aurora PostgreSQL、請求評価はAmazon DynamoDB(スケーラブルなKV-JSON操作)、支払処理はAmazon Aurora(トランザクション整合性)を使用する。重複支払防止にはDynamoDBの条件付き書き込みと冪等性(同じ操作を複数回実行しても結果が変わらないこと)キーを使用する。不正検知はAmazon Kinesis Data Streams + AWS Lambda(SageMakerエンドポイント呼び出し)でリアルタイム処理する。再保険EDI連携はAWS Transfer Family(AS2プロトコル)で受信し、AWS Step FunctionsでEDIから内部フォーマットへの変換を実施する。バッチレポートはAWS Batchで実行し、SFTP送信はAWS Transfer Familyで行う。
EKSが過剰に複雑でDynamoDBを請求評価に使う根拠が薄く、重複防止の実装が不完全です。
B
AWS Lambda(サーバーレス)をすべてのマイクロサービスのランタイムとして採用し、コールドスタート最小化のためProvisioned Concurrencyを設定する。API GatewayをすべてのサービスのエントリポイントとしてPrivate APIで構成する。データベースはAmazon Aurora Serverless v2(PostgreSQL互換)を共有し、スキーマレベルでサービスを分離する。支払処理の重複防止はAurora Serverless v2のトランザクション分離レベルをSERIALIZABLEに設定して実現する。不正検知はLambdaのmax timeout(15分)内で処理完了できない場合にSageMakerリアルタイム推論エンドポイントを同期呼び出しする。EDI連携はAWS Glueのカスタムコネクタでフォーマット変換後、Amazon MQでメッセージキューイングして再保険会社へ送信する。すべてのLambda間通信はAmazon SQSのFIFOキューで非同期化し、99.99%可用性をマルチリージョン構成(Active-Active)で実現する。
Lambdaの15分制限が保険処理フローと相性が悪く、Aurora共有スキーマはマイクロサービスの原則に反します。
C
Amazon ECSとAWS Fargateを組み合わせてサービスごとのコンテナを運用し、サービスディスカバリにはAmazon CloudMapを使用する。サービス間の非同期通信はAmazon EventBridge(イベント駆動)とAmazon SQS(ポイントツーポイント)を組み合わせ、用途に応じて使い分ける。データベースはDomain-Driven Design(DDD:ドメイン駆動設計)の原則に基づきサービスごとに分離し、支払処理サービスにはAmazon RDS for PostgreSQL(Multi-AZ)と分散サーガパターン(各サービスのローカルトランザクションをイベントで連携し、補償トランザクションで整合性を維持する設計パターン)を実装して重複支払いを防止する。不正検知サービスはEventBridgeのカスタムイベントバスで請求提出イベントを受信し、SageMakerリアルタイム推論エンドポイントを呼び出す(ターゲットレイテンシ:p99 800ms)。ML自動評価はSageMaker PipelinesとSageMaker Model Registryで継続的なモデル更新パイプラインを構築する。EDI連携はAWS Transfer Family(AS2)+AWS Step Functionsで変換し、Amazon MQ(ActiveMQ)で再保険会社のレガシーシステムとの非同期連携を実現する。バッチレポートはAWS BatchとAmazon SFTPプロトコルのAWS Transfer Familyで規制当局に送信する。すべてのサービス間通信はAWS Certificate ManagerのPrivate CAでmTLSを実装し、AWS IAM Roles for Service Accounts(IRSA相当)をECSタスクロールで実現する。
✓ 正解
Amazon ECSとAWS Fargateを組み合わせてサービスごとのコンテナを運用し、サービスディスカバリにはAmazon CloudMapを使用する。サービス間の非同期通信はAmazon EventBridge(イベント駆動)とAmazon SQS(ポイントツーポイント)を組み合わせ、用途に応じて使い分ける。データベースはDomain-Driven Design(DDD:ドメイン駆動設計)の原則に基づきサービスごとに分離し、支払処理サービスにはAmazon RDS for PostgreSQL(Multi-AZ)と分散サーガパターン(各サービスのローカルトランザクションをイベントで連携し、補償トランザクションで整合性を維持する設計パターン)を実装して重複支払いを防止する。不正検知サービスはEventBridgeのカスタムイベントバスで請求提出イベントを受信し、SageMakerリアルタイム推論エンドポイントを呼び出す(ターゲットレイテンシ:p99 800ms)。ML自動評価はSageMaker PipelinesとSageMaker Model Registryで継続的なモデル更新パイプラインを構築する。EDI連携はAWS Transfer Family(AS2)+AWS Step Functionsで変換し、Amazon MQ(ActiveMQ)で再保険会社のレガシーシステムとの非同期連携を実現する。バッチレポートはAWS BatchとAmazon SFTPプロトコルのAWS Transfer Familyで規制当局に送信する。すべてのサービス間通信はAWS Certificate ManagerのPrivate CAでmTLSを実装し、AWS IAM Roles for Service Accounts(IRSA相当)をECSタスクロールで実現する。 解説: ECS Fargateはマネージドでインフラ管理が不要、かつWebLogicからのJavaアプリ移行に適しています。分散サーガパターンで最終的一貫性を維持しながら重複支払いを防止し、EventBridgeとSQSの使い分けはイベント駆動マイクロサービスのベストプラクティスです。AS2対応のTransfer FamilyはEDI連携の標準実装です。
D
Amazon EKSとAWS Lambda(イベント駆動部分)のハイブリッドアーキテクチャを採用する。コアサービス(顧客管理、ポリシー管理、支払処理)はEKSで長期稼働し、イベント駆動サービス(不正検知、通知)はLambdaで実装する。サービスメッシュはIstio(オープンソースのサービスメッシュ)をセルフマネージドで運用し、mTLSと高度なトラフィック管理を実現する。データベースはサービスごとに最適なDBを選択し、マイクロサービス間のデータ整合性はApache Kafkaのイベントソーシング(すべての状態変化をイベントとして記録する設計パターン)で実現する。KafkaはAmazon MSK(Managed Streaming for Apache Kafka)で運用する。支払処理の重複防止はKafkaの冪等プロデューサーとExactly-Once Semanticsで実現する。再保険EDI連携はAWS Transfer Family + AWS Glue ETLジョブで変換後、MSK経由で内部システムに配信する。99.99%可用性はマルチAZ構成のEKSクラスターと自動フェイルオーバーで実現する。
セルフマネージドIstioは運用負担が高く、MSK(Kafka)の採用は専門知識が必要で過剰な複雑性を生じます。

解説

Amazon ECSとAWS Fargateを組み合わせてサービスごとのコンテナを運用し、サービスディスカバリにはAmazon CloudMapを使用する。サービス間の非同期通信はAmazon EventBridge(イベント駆動)とAmazon SQS(ポイントツーポイント)を組み合わせ、用途に応じて使い分ける。データベースはDomain-Driven Design(DDD:ドメイン駆動設計)の原則に基づきサービスごとに分離し、支払処理サービスにはAmazon RDS for PostgreSQL(Multi-AZ)と分散サーガパターン(各サービスのローカルトランザクションをイベントで連携し、補償トランザクションで整合性を維持する設計パターン)を実装して重複支払いを防止する。不正検知サービスはEventBridgeのカスタムイベントバスで請求提出イベントを受信し、SageMakerリアルタイム推論エンドポイントを呼び出す(ターゲットレイテンシ:p99 800ms)。ML自動評価はSageMaker PipelinesとSageMaker Model Registryで継続的なモデル更新パイプラインを構築する。EDI連携はAWS Transfer Family(AS2)+AWS Step Functionsで変換し、Amazon MQ(ActiveMQ)で再保険会社のレガシーシステムとの非同期連携を実現する。バッチレポートはAWS BatchとAmazon SFTPプロトコルのAWS Transfer Familyで規制当局に送信する。すべてのサービス間通信はAWS Certificate ManagerのPrivate CAでmTLSを実装し、AWS IAM Roles for Service Accounts(IRSA相当)をECSタスクロールで実現する。 解説: ECS Fargateはマネージドでインフラ管理が不要、かつWebLogicからのJavaアプリ移行に適しています。分散サーガパターンで最終的一貫性を維持しながら重複支払いを防止し、EventBridgeとSQSの使い分けはイベント駆動マイクロサービスのベストプラクティスです。AS2対応のTransfer FamilyはEDI連携の標準実装です。 選択肢AはEKSが過剰に複雑でDynamoDBを請求評価に使う根拠が薄く、重複防止の実装が不完全です。 選択肢BはLambdaの15分制限が保険処理フローと相性が悪く、Aurora共有スキーマはマイクロサービスの原則に反します。 選択肢DのセルフマネージドIstioは運用負担が高く、MSK(Kafka)の採用は専門知識が必要で過剰な複雑性を生じます。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSAPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SAP の問題一覧に戻る