LoginSignup
6
8

More than 1 year has passed since last update.

GCPのデータ転送サービスまとめ

Posted at

この記事はなに?

  • Google Cloud認定資格のProfessional Data Engineerの勉強内容をまとめたものです。
  • 一部、筆者の理解不足により誤った内容が書かれている可能性があります。
  • 参考にしていただく際は必ず公式リファレンスも併せてご参照ください。
  • また、この内容を覚えれば資格に合格できると保証されたものではないことをご了承ください。

Storage Transfer Service

特徴

  • オンプレミスからGCPへのデータ転送や、AWSからGCPへのデータ転送を行うことができる。
    • 転送先はGCSのバケット。
    • GCSのバケットから、他のバケットへの転送も可能。
    • 転送するデータ量が10TB未満の場合、gsutilコマンドによる転送が推奨される。
  • 1回限りの転送もできれば、スケジューリングによる定期実行も可能。

Transfer Appliance

特徴

  • Transfer Appliance自体は、大容量のストレージデバイスである。
  • データをTrasfer Applianceにアップロードし、Googleアップロード施設に返送し、そこからGCSのバケットにアップロードされる。
  • オンプレミスの大容量データ(10TB以上)を、1度に転送したい場合に使われる。

BigQuery Data Transfer Service

特徴

  • 設計されたスケジュールに基づき、BigQueryへのデータの読み込みを行う。
  • データソースとしては、GCSの他にGoogle広告やYoutubeといったGoogle製品、AWSのS3やRedshiftとも連携できる。

Cloud Pub/Sub

特徴

  • 安全かつスケーラブルにデータをストリーミングできるメッセージキューサービス。
  • メッセージを送信するパブリッシャーと、メッセージを受信するサブスクライバーによってデータ転送を実現する。
  • パブリッシャーはトピックにメッセージを送信し、トピックから紐づくサブスクリプションにメッセージが渡され、サブスクライバーはサブスクリプションからメッセージを受信する。
  • サブスクライバーはメッセージを受信したら、受信したことをCloud Pub/Subに返す。
    • サブスクライバーからの確認が取れない限り、Cloud Pub/Subはメッセージを再送し続ける。
  • トピックは、最大31日間メッセージを保持することができる。
  • サブスクリプションは、最大7日間メッセージを保持することができる。

メッセージ

  • 1つあたり10MBのサイズ上限がある。
  • パブリッシャーは、メッセージを送信する際にkey-value形式で属性を付与することができる。
    • サブスクライバーは、属性情報に沿ってメッセージの受信を制御することができる。
  • サブスクライバーは、必ずしもパブリッシャーのメッセージ配信順にメッセージを受信するとは限らない。
    • トピックにメッセージを送信する際に、順序指定キーを設定することで、同一キーのメッセージを受信する際に、配信順に受信することができる。
    • 同一キーのメッセージを複数再配信する場合、最初の配信順に沿ってすべてのメッセージを受信する。
  • Cloud Pub/Subは、少なくとも1回はサブスクリプションにメッセージを配信する。
    • ただし、保持期間を過ぎた場合は例外である。

デッドレタートピック

  • サブスクライバーからのメッセージ確認応答がない場合、メッセージの再配信を行う。
    • デフォルトではすぐに配信するが、指数バックオフのポリシーを作成することで再送タイミングを制御することができる。
  • 応答のないメッセージを、デッドレタートピックに転送することができる。
    • 転送されたメッセージは、Cloud Monitoringで監視できる。

Apache Kafkaからの移行

  • PubSub Kafkaコネクタを使用する。
    • 特定のメッセージを、Apache KafkaからCloud Pub/Subに転送することができる。
  • 移行中及び移行後は、Cloud Monitoringで正常に移行できているかを観測する。
6
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
8