模擬問題集 › GCP-PCD › 練習問題 13

GCP-PCD 練習問題 13|アプリケーションと Google Cloud サービスの統合

Professional Cloud Developer・無料公開(全 200 問中 15 問を無料公開中)

問題
あなたのチームは、Cloud Storage バケットに保存されている数百万件の顧客レコード ファイルを読み取る Python ジョブを実行しています。規制要件に準拠するため、ジョブが完了したら直ちに顧客データが削除されるようにする必要があります。このタスクの完了に要する時間を最小限に抑えたいと考えています。どうすればよいですか。

選択肢と解説

  • ✓
    ジョブに最終ステップを追加し、Cloud Storage API へのバッチ リクエストを使用して、バケット内のすべてのオブジェクトを一括で削除する。
  • 2
    ジョブの実行終了時にバケット内のすべてのオブジェクトを削除するオブジェクトのライフサイクル管理を Cloud Storage バケットに構成する。
  • 3
    ジョブが完了したら、Google Cloud コンソールからバケットを削除する
  • 4
    gcloud CLI を使用して gcloud storage rm --recursive gs://BUCKET_NAME/ コマンドを実行する。

解説

【正解】A

【0からの解説】
①前提知識
・Cloud Storage のオブジェクト削除は、基本的に 1 オブジェクトにつき 1 回の DELETE リクエストです。数百万件を 1 件ずつ順番に削除すると、HTTP の往復が数百万回発生して時間がかかります。
・JSON API のバッチ リクエストを使うと、最大 100 件の API 呼び出しを 1 つの HTTP リクエストにまとめられ、ネットワークのオーバーヘッドを削減できます。Python のクライアント ライブラリ(google-cloud-storage)では client.batch() コンテキストで削除をまとめられ、複数のバッチを並列に送ることもできます。
・オブジェクトのライフサイクル管理は、オブジェクトの経過日数・作成日・ストレージ クラスなどの条件に一致したオブジェクトを自動で削除・クラス変更する機能です。条件の評価と実行は非同期で、条件を満たしてから実際に削除されるまで最大 24 時間程度の遅延があり得ます。また「ジョブが終了したとき」というイベントを条件にすることはできません。
・参考: 現在の公式ドキュメントでは、数百万〜数十億件規模の削除には「ストレージ バッチオペレーション(Storage batch operations)」を使い、1 つの削除ジョブでまとめて削除する方法が案内されています。これは JSON API のバッチ リクエスト(選択肢 A)とは別の機能で、本問の選択肢にはありません。そのため本問では、選択肢の中で最も要件に合う A を選びます。

②要件の整理
・数百万件の顧客レコード ファイル
・ジョブ完了後「直ちに」削除(規制要件)
・完了までの時間を最小化

③正解の理由
ジョブ自身の最終ステップとして削除を組み込めば、処理の完了と同時に人手を介さず削除が始まり「直ちに」の要件を満たします。さらにバッチ リクエストで 100 件ずつまとめて(必要なら並列で)削除するため、1 件ずつ削除するより大幅に短時間で完了します。自動化・即時性・速度の 3 点を満たすのは A です。

【誤りの選択肢】
B:ライフサイクル管理は非同期で実行され、条件を満たしてから削除まで最大 24 時間程度かかる場合があるため「直ちに削除」を保証できません。また「ジョブの実行終了時」を条件にする設定は存在せず、選択肢の構成自体が実現できません。
C:Google Cloud コンソールは数百万件規模の一括削除をバックグラウンドで実行できますが、あくまで人が画面を操作する手動の手順です。ジョブの完了を人が確認してから作業するため、確認や操作が遅れればその分だけ削除開始が遅れ、規制要件の「ジョブ完了後に直ちに削除」を確実には満たせません(即時性・確実性に欠ける)。さらにバケット自体を消すと、次回のジョブ実行時にバケットを作り直す必要も生じます。ジョブに削除を組み込んで自動で即時に実行する A に劣ります。
D:gcloud storage rm --recursive でも削除はできますが、公式ドキュメントは「10 万件以上のオブジェクトを一括削除する場合は処理に長い時間がかかるため gcloud storage の使用は避ける」としています。また手動で実行する手順であり、ジョブ完了と連動した即時削除になっていない点でも A に劣ります。

【参考】
オブジェクトのライフサイクル管理 | Cloud Storage
リクエスト レートとアクセス分散のガイドライン | Cloud Storage
← 練習問題 12練習問題 14 →
GCP-PCD の模擬問題集は全 200 問

本番形式の練習テスト 4 回を、試験モード/演習モードで受験できます。 全問に解説付き、ドメイン別の弱点分析にも対応。模試プラン(月額 ¥980)からご利用いただけます。

GCP-PCD の模試を受ける料金プランを見る

GCP-PCD の無料公開問題

問題 1問題 2問題 3問題 4問題 5問題 6問題 7問題 8問題 9問題 10問題 11問題 12問題 13問題 14問題 15