# Google Pub/Sub - データストリーミング (Data Engineering) > Topics、subscriptions、push vs pull、ordering、dead lettering、exactly-once delivery、monitoring、schema registry - 20 面接問題 - Senior - [面接問題: Data Engineering](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions.md) ## 1. Google Pub/Subの主要なアーキテクチャ的特徴は何ですか? **回答** Google Pub/Subは、メッセージのプロデューサーとコンシューマーを分離するサーバーレスの非同期メッセージングサービスです。Publisherはsubscriberを知らずにtopicにメッセージを送信し、subscriberはpublisherを知らずにsubscriptionを介してメッセージを受信します。このアーキテクチャにより、両側で独立した水平スケーリングが可能になります。 ## 2. Pub/Subにおけるtopicとsubscriptionの根本的な違いは何ですか? **回答** topicはpublisherがメッセージを送信する名前付きチャネルであり、subscriptionはtopicからメッセージを受信するsubscriberの関心を表す名前付きエンティティです。1つのtopicに複数のsubscriptionを持つことができ、各subscriptionはtopicに公開された各メッセージのコピーを受信します。 ## 3. どのような場合にpush subscriptionよりpull subscriptionを優先すべきですか? **回答** subscriberがメッセージの消費ペース(flow control)を制御する必要がある場合、大量のバッチを処理する場合、または実行環境が公開HTTPSエンドポイントを公開できない場合は、pull subscriptionが好ましいです。Pullでは、取得するメッセージ数を動的に調整することで、負荷のピークを管理しやすくなります。 ## さらに17問利用可能 - Pub/Subのacknowledgementメカニズムはどのように機能しますか? - Pub/Subにおけるdead letter topicの役割は何ですか? 無料で登録: https://sharpskill.dev/ja/login ## その他のData Engineering面接トピック - [Linux & Shell - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/linux-shell-basics.md): 20問, Junior - [Git & GitHub - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/git-github-fundamentals.md): 20問, Junior - [データエンジニアリングのための高度なPython](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/python-advanced-de.md): 25問, Junior - [Docker - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/docker-fundamentals.md): 25問, Junior - [Google Cloud Platform - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/gcp-fundamentals.md): 20問, Junior - [CI/CDとコード品質](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/ci-cd-code-quality.md): 20問, Mid-Level - [Docker Compose](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/docker-compose.md): 20問, Mid-Level - [FastAPI - データAPI](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/fastapi.md): 20問, Mid-Level - [Data Engineering向けの高度なSQL](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/sql-advanced-de.md): 20問, Mid-Level - [Data Lake - アーキテクチャと取り込み](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/data-lake.md): 20問, Mid-Level - [データエンジニアリングのためのBigQuery](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/bigquery-de.md): 20問, Mid-Level - [PostgreSQL - 管理](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/postgresql-admin.md): 20問, Mid-Level - [Data EngineeringのためのData Modeling](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/data-modeling-de.md): 20問, Mid-Level - [Fivetran & Airbyte - データ取り込み](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/fivetran-airbyte.md): 20問, Mid-Level - [dbt - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/dbt-fundamentals-de.md): 20問, Mid-Level - [Apache Airflow - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/airflow-fundamentals.md): 20問, Mid-Level - [Kubernetes - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/kubernetes-fundamentals.md): 20問, Mid-Level - [dbt - 高度な機能](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/dbt-advanced-de.md): 20問, Senior - [ETL / ELT / ETLT パターン](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/etl-elt-patterns.md): 20問, Senior - [Apache Airflow - 上級](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/airflow-advanced.md): 20問, Senior - [Airflow + dbt - パイプラインオーケストレーション](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/airflow-dbt-integration.md): 20問, Senior - [PySpark - 大規模処理](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/pyspark.md): 20問, Senior - [Apache Beam & Dataflow](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/apache-beam-dataflow.md): 20問, Senior - [Kubernetes - 本番環境とスケーリング](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/kubernetes-advanced.md): 20問, Senior - [Terraform - Infrastructure as Code](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/terraform.md): 20問, Senior - [NoSQLデータベース](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/nosql-databases.md): 20問, Senior - [モダンなData Architecture](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/data-architecture.md): 20問, Senior - [モニタリングとオブザーバビリティ](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/monitoring-observability.md): 20問, Senior - [IAMとデータセキュリティ](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/iam-security-de.md): 20問, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/pubsub-streaming