Question 1
Multiple choice
As your organization expands its usage of GCP, many teams have started to create their own projects. Projects are further multiplied to accommodate different stages of deployments and target audiences. Each project requires unique access control configurations. The central IT team needs to have access to all projects. Furthermore, data from Cloud Storage buckets and BigQuery datasets must be shared for use in other projects in an ad hoc way. You want to simplify access control management by minimizing the number of policies. Which two steps should you take? Choose 2 answers.
-
A
Use Cloud Deployment Manager to automate access provision.
-
B
Introduce resource hierarchy to leverage access control policy inheritance.
-
C
Create distinct groups for various teams, and specify groups in Cloud IAM policies.
-
D
Only use service accounts when sharing data for Cloud Storage buckets and BigQuery datasets.
-
E
For each Cloud Storage bucket or BigQuery dataset, decide which projects need access. Find all the active members who have access to these projects, and create a Cloud IAM policy to grant access to all these users.
Reveal answer details
Close answer details
Which is not a valid reason for poor Cloud Bigtable performance?
-
A
The workload isn't appropriate for Cloud Bigtable.
-
B
The table's schema is not designed correctly.
-
C
The Cloud Bigtable cluster has too many nodes.
-
D
There are issues with the network connection.
Reveal answer details
Close answer details
Correct answerC
ExplanationThe Cloud Bigtable cluster doesn't have enough nodes. If your Cloud Bigtable cluster is overloaded, adding more nodes can improve performance. Use the monitoring tools to check whether the cluster is overloaded. References: https://cloud.google.com/bigtable/docs/performance
You operate a database that stores stock trades and an application that retrieves average stock price for a given company over an adjustable window of time. The data is stored in Cloud Bigtable where the datetime of the stock trade is the beginning of the row key. Your application has thousands of concurrent users, and you notice that performance is starting to degrade as more stocks are added. What should you do to improve the performance of your application?
-
A
Change the row key syntax in your Cloud Bigtable table to begin with the stock symbol.
-
B
Change the row key syntax in your Cloud Bigtable table to begin with a random number per second.
-
C
Change the data pipeline to use BigQuery for storing stock trades, and update your application.
-
D
Use Cloud Dataflow to write summary of each day's stock trades to an Avro file on Cloud Storage. Update your application to read from Cloud Storage and Cloud Bigtable to compute the responses.
Reveal answer details
Close answer details
Your company has a hybrid cloud initiative. You have a complex data pipeline that moves data between cloud provider services and leverages services from each of the cloud providers. Which cloud-native service should you use to orchestrate the entire pipeline?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Your company is implementing a data warehouse using BigQuery, and you have been tasked with designing the data model You move your on-premises sales data warehouse with a star data schema to BigQuery but notice performance issues when querying the data of the past 30 days Based on Google's recommended practices, what should you do to speed up the query without increasing storage costs?
-
A
-
B
Shard the data by customer ID
-
C
Materialize the dimensional data in views
-
D
Partition the data by transaction date
Reveal answer details
Close answer details
Your startup has a web application that currently serves customers out of a single region in Asia. You are targeting funding that will allow your startup lo serve customers globally. Your current goal is to optimize for cost, and your post-funding goat is to optimize for global presence and performance. You must use a native JDBC driver. What should you do?
-
A
Use Cloud Spanner to configure a single region instance initially. and then configure multi-region C oud Spanner instances after securing funding.
-
B
Use a Cloud SQL for PostgreSQL highly available instance first, and 8table with US.Europe, and Asia replication alter securing funding
-
C
Use a Cloud SQL for PostgreSQL zonal instance first and Bigtable with US. Europe, and Asia after securing funding.
-
D
Use a Cloud SOL for PostgreSQL zonal instance first, and Cloud SOL for PostgreSQL with highly available configuration after securing funding.
Reveal answer details
Close answer details
Correct answerA
Explanationhttps://cloud.google.com/spanner/docs/instance-configurations#tradeoffs_regional_versus_multi-region_configurations
You work for a car manufacturer and have set up a data pipeline using Google Cloud Pub/Sub to capture anomalous sensor events. You are using a push subscription in Cloud Pub/Sub that calls a custom HTTPS endpoint that you have created to take action of these anomalous events as they occur. Your custom HTTPS endpoint keeps getting an inordinate amount of duplicate messages. What is the most likely cause of these duplicate messages?
-
A
The message body for the sensor event is too large.
-
B
Your custom endpoint has an out-of-date SSL certificate.
-
C
The Cloud Pub/Sub topic has too many messages published to it.
-
D
Your custom endpoint is not acknowledging messages within the acknowledgement deadline.
Reveal answer details
Close answer details
When creating a new Cloud Dataproc cluster with the projects.regions.clusters.create operation, these four values are required: project, region, name, and ____.
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answerA
ExplanationAt a minimum, you must specify four values when creating a new cluster with the projects.regions.clusters.create operation: The project in which the cluster will be created The region to use The name of the cluster The zone in which the cluster will be created You can specify many more details beyond these minimum requirements. For example, you can also specify the number of workers, whether preemptible compute should be used, and the network settings. References: https://cloud.google.com/dataproc/docs/tutorials/python-library-example#create_a_new_cloud_dataproc_cluste
You launched a new gaming app almost three years ago. You have been uploading log files from the previous day to a separate Google BigQuery table with the table name format LOGS_yyyymmdd. You have been using table wildcard functions to generate daily and monthly reports for all time ranges. Recently, you discovered that some queries that cover long date ranges are exceeding the limit of 1,000 tables and failing. How can you resolve this issue?
-
A
Convert all daily log tables into date-partitioned tables
-
B
Convert the sharded tables into a single partitioned table
-
C
Enable query caching so you can cache data from previous months
-
D
Create separate views to cover each month, and query from these views
Reveal answer details
Close answer details
Question 10
Single choice
You have some data, which is shown in the graphic below. The two dimensions are X and Y, and the shade of each dot represents what class it is. You want to classify this data accurately using a linear algorithm.  To do this you need to add a synthetic feature. What should the value of that feature be?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Question 11
Single choice
Your team is building a data lake platform on Google Cloud. As a part of the data foundation design, you are planning to store all the raw data in Cloud Storage You are expecting to ingest approximately 25 GB of data a day and your billing department is worried about the increasing cost of storing old data. The current business requirements are: 1. The old data can be deleted anytime 2. You plan to use the visualization layer for current and historical reporting 3. The old data should be available instantly when accessed 4. There should not be any charges for data retrieval. What should you do to optimize for cost?
-
A
Create the bucket with the Autoclass storage class feature.
-
B
Create an Object Lifecycle Management policy to modify the storage class for data older than 30 days to nearline, 90 days to coldline. and 365 days to archive storage class. Delete old data as needed.
-
C
Create an Object Lifecycle Management policy to modify the storage class for data older than 30 days to coldline, 90 days to nearline. and 365 days to archive storage class Delete old data as needed.
-
D
Create an Object Lifecycle Management policy to modify the storage class for data older than 30 days to nearlme. 45 days to coldline. and 60 days to archive storage class Delete old data as needed.
Reveal answer details
Close answer details
Correct answerA
ExplanationAutoclass automatically moves objects between storage classes without impacting performance or availability, nor incurring retrieval costs. It continuously optimizes storage costs based on access patterns without the need to set specific lifecycle management policies.
Question 12
Single choice
You are building a new data pipeline to share data between two different types of applications: jobs generators and job runners. Your solution must scale to accommodate increases in usage and must accommodate the addition of new applications without negatively affecting the performance of existing ones. What should you do?
-
A
Create an API using App Engine to receive and send messages to the applications
-
B
Use a Cloud Pub/Sub topic to publish jobs, and use subscriptions to execute them
-
C
Create a table on Cloud SQL, and insert and delete rows with the job information
-
D
Create a table on Cloud Spanner, and insert and delete rows with the job information
Reveal answer details
Close answer details
Question 13
Single choice
You are running a streaming pipeline with Dataflow and are using hopping windows to group the data as the data arrives. You noticed that some data is arriving late but is not being marked as late data, which is resulting in inaccurate aggregations downstream. You need to find a solution that allows you to capture the late data in the appropriate window. What should you do?
-
A
Change your windowing function to session windows to define your windows based on certain activity.
-
B
Change your windowing function to tumbling windows to avoid overlapping window periods.
-
C
Expand your hopping window so that the late data has more time to arrive within the grouping.
-
D
Use watermarks to define the expected data arrival window Allow late data as it arrives.
Reveal answer details
Close answer details
Correct answerD
ExplanationWatermarks are a way of tracking the progress of time in a streaming pipeline. They are used to determine when a window can be closed and the results emitted. Watermarks can be either event-time based or processing-time based. Event-time watermarks track the progress of time based on the timestamps of the data elements, while processing-time watermarks track the progress of time based on the system clock. Event-time watermarks are more accurate, but they require the data source to provide reliable timestamps. Processing-time watermarks are simpler, but they can be affected by system delays or backlogs. By using watermarks, you can define the expected data arrival window for each windowing function. You can also specify how to handle late data, which is data that arrives after the watermark has passed. You can either discard late data, or allow late data and update the results as new data arrives. Allowing late data requires you to use triggers to control when the results are emitted. In this case, using watermarks and allowing late data is the best solution to capture the late data in the appropriate window. Changing the windowing function to session windows or tumbling windows will not solve the problem of late data, as they still rely on watermarks to determine when to close the windows. Expanding the hopping window might reduce the amount of late data, but it will also change the semantics of the windowing function and the results. References: Streaming pipelines | Cloud Dataflow | Google Cloud Windowing | Apache Beam
Question 14
Single choice
You plan to deploy Cloud SQL using MySQL. You need to ensure high availability in the event of a zone failure. What should you do?
-
A
Create a Cloud SQL instance in one zone, and create a failover replica in another zone within the same region.
-
B
Create a Cloud SQL instance in one zone, and create a read replica in another zone within the same region.
-
C
Create a Cloud SQL instance in one zone, and configure an external read replica in a zone in a different region.
-
D
Create a Cloud SQL instance in a region, and configure automatic backup to a Cloud Storage bucket in the same region.
Reveal answer details
Close answer details
Question 15
Single choice
You are implementing workflow pipeline scheduling using open source-based tools and Google Kubernetes Engine (GKE). You want to use a Google managed service to simplify and automate the task. You also want to accommodate Shared VPC networking considerations. What should you do?
-
A
Use Dataflow for your workflow pipelines. Use Cloud Run triggers for scheduling.
-
B
Use Dataflow for your workflow pipelines. Use shell scripts to schedule workflows.
-
C
Use Cloud Composer in a Shared VPC configuration. Place the Cloud Composer resources in the host project.
-
D
Use Cloud Composer in a Shared VPC configuration. Place the Cloud Composer resources in the service project.
Reveal answer details
Close answer details
Correct answerD
ExplanationShared VPC requires that you designate a host project to which networks and subnetworks belong and a service project, which is attached to the host project. When Cloud Composer participates in a Shared VPC, the Cloud Composer environment is in the service project. References: https://cloud.google.com/composer/docs/how-to/managing/configuring-shared-vpc
Question 16
Multiple choice
You decided to use Cloud Datastore to ingest vehicle telemetry data in real time. You want to build a storage system that will account for the long-term data growth, while keeping the costs low. You also want to create snapshots of the data periodically, so that you can make a point-in-time (PIT) recovery, or clone a copy of the data for Cloud Datastore in a different environment. You want to archive these snapshots for a long time. Which two methods can accomplish this? Choose 2 answers.
-
A
Use managed export, and store the data in a Cloud Storage bucket using Nearline or Coldline class.
-
B
Use managed exportm, and then import to Cloud Datastore in a separate project under a unique namespace reserved for that export.
-
C
Use managed export, and then import the data into a BigQuery table created just for that export, and delete temporary export files.
-
D
Write an application that uses Cloud Datastore client libraries to read all the entities. Treat each entity as a BigQuery table row via BigQuery streaming insert. Assign an export timestamp for each export, and attach it as an extra column for each row. Make sure that the BigQuery table is partitioned using the export timestamp column.
-
E
Write an application that uses Cloud Datastore client libraries to read all the entities. Format the exported data into a JSON file. Apply compression before storing the data in Cloud Source Repositories.
Reveal answer details
Close answer details
Question 17
Single choice
You are configuring networking for a Dataflow job. The data pipeline uses custom container images with the libraries that are required for the transformation logic preinstalled. The data pipeline reads the data from Cloud Storage and writes the data to BigQuery. You need to ensure cost-effective and secure communication between the pipeline and Google APIs and services. What should you do?
-
A
Leave external IP addresses assigned to worker VMs while enforcing firewall rules.
-
B
Disable external IP addresses and establish a Private Service Connect endpoint IP address.
-
C
Disable external IP addresses from worker VMs and enable Private Google Access.
-
D
Enable Cloud NAT to provide outbound internet connectivity while enforcing firewall rules.
Reveal answer details
Close answer details
Correct answerC
ExplanationPrivate Google Access allows VMs without external IP addresses to communicate with Google APIs and services over internal routes. This reduces the cost and increases the security of the data pipeline. Custom container images can be stored in Container Registry, which supports Private Google Access. Dataflow supports Private Google Access for both batch and streaming jobs. References: Private Google Access overview Using Private Google Access and Cloud NAT Using custom containers with Dataflow
Question 18
Single choice
You have developed three data processing jobs. One executes a Cloud Dataflow pipeline that transforms data uploaded to Cloud Storage and writes results to BigQuery. The second ingests data from on-premises servers and uploads it to Cloud Storage. The third is a Cloud Dataflow pipeline that gets information from third-party data providers and uploads the information to Cloud Storage. You need to be able to schedule and monitor the execution of these three workflows and manually execute them when needed. What should you do?
-
A
Create a Direct Acyclic Graph in Cloud Composer to schedule and monitor the jobs.
-
B
Use Stackdriver Monitoring and set up an alert with a Webhook notification to trigger the jobs.
-
C
Develop an App Engine application to schedule and request the status of the jobs using GCP API calls.
-
D
Set up cron jobs in a Compute Engine instance to schedule and monitor the pipelines using GCP API calls.
Reveal answer details
Close answer details
Question 19
Single choice
An aerospace company uses a proprietary data format to store its night data. You need to connect this new data source to BigQuery and stream the data into BigQuery. You want to efficiency import the data into BigQuery where consuming as few resources as possible. What should you do?
-
A
Use a standard Dataflow pipeline to store the raw data in BigQuery and then transform the format later when the data is used.
-
B
Write a shell script that triggers a Cloud Function that performs periodic ETL batch jobs on the new data source
-
C
Use Apache Hive to write a Dataproc job that streams the data into BigQuery in CSV format
-
D
Use an Apache Beam custom connector to write a Dataflow pipeline that streams the data into BigQuery in Avro format
Reveal answer details
Close answer details
Question 20
Single choice
Government regulations in the banking industry mandate the protection of client's personally identifiable information (PII). Your company requires PII to be access controlled encrypted and compliant with major data protection standards In addition to using Cloud Data Loss Prevention (Cloud DIP) you want to follow Google-recommended practices and use service accounts to control access to PII. What should you do?
-
A
Assign the required identity and Access Management (IAM) roles to every employee, and create a single service account to access protect resources
-
B
Use one service account to access a Cloud SQL database and use separate service accounts for each human user
-
C
Use Cloud Storage to comply with major data protection standards. Use one service account shared by all users
-
D
Use Cloud Storage to comply with major data protection standards. Use multiple service accounts attached to IAM groups to grant the appropriate access to each group
Reveal answer details
Close answer details
Question 21
Single choice
Which of the following is not true about Dataflow pipelines?
-
A
Pipelines are a set of operations
-
B
Pipelines represent a data processing job
-
C
Pipelines represent a directed graph of steps
-
D
Pipelines can share data between instances
Reveal answer details
Close answer details
Correct answerD
ExplanationThe data and transforms in a pipeline are unique to, and owned by, that pipeline. While your program can create multiple pipelines, pipelines cannot share data or transforms Reference: https://cloud.google.com/dataflow/model/pipelines
Question 22
Single choice
You want to optimize your queries for cost and performance. How should you structure your data?
-
A
Partition table data by create_date, location_id and device_version
-
B
Partition table data by create_date cluster table data by location_Id and device_version
-
C
Cluster table data by create_date location_id and device_version
-
D
Cluster table data by create_date partition by locationed and device_version
Reveal answer details
Close answer details
Question 23
Multiple choice
You want to use a database of information about tissue samples to classify future tissue samples as either normal or mutated. You are evaluating an unsupervised anomaly detection method for classifying the tissue samples. Which two characteristic support this method? (Choose two.)
-
A
There are very few occurrences of mutations relative to normal samples.
-
B
There are roughly equal occurrences of both normal and mutated samples in the database.
-
C
You expect future mutations to have different features from the mutated samples in the database.
-
D
You expect future mutations to have similar features to the mutated samples in the database.
-
E
You already have labels for which samples are mutated and which are normal in the database.
Reveal answer details
Close answer details
Correct answersA, D
ExplanationUnsupervised anomaly detection techniques detect anomalies in an unlabeled test data set under the assumption that the majority of the instances in the data set are normal by looking for instances that seem to fit least to the remainder of the data set. https://en.wikipedia.org/wiki/Anomaly_detection
Question 24
Single choice
Your analytics team wants to build a simple statistical model to determine which customers are most likely to work with your company again, based on a few different metrics. They want to run the model on Apache Spark, using data housed in Google Cloud Storage, and you have recommended using Google Cloud Dataproc to execute this job. Testing has shown that this workload can run in approximately 30 minutes on a 15-node cluster, outputting the results into Google BigQuery. The plan is to run this workload weekly. How should you optimize the cluster for cost?
-
A
Migrate the workload to Google Cloud Dataflow
-
B
Use pre-emptible virtual machines (VMs) for the cluster
-
C
Use a higher-memory node so that the job runs faster
-
D
Use SSDs on the worker nodes so that the job can run faster
Reveal answer details
Close answer details
Case study
Case Study 2
Case Study Questions MJTelco Case Study Company Overview MJTelco is a startup that plans to build networks in rapidly growing, underserved markets around the world. The company has patents for innovative optical communications hardware. Based on these patents, they can create many reliable, high-speed backbone links with inexpensive hardware. Company Background Founded by experienced telecom executives, MJTelco uses technologies originally developed to overcome communications challenges in space. Fundamental to their operation, they need to create a distributed data infrastructure that drives real-time analysis and incorporates machine learning to continuously optimize their topologies. Because their hardware is inexpensive, they plan to overdeploy the network allowing them to account for the impact of dynamic regional politics on location availability and cost. Their management and operations teams are situated all around the globe creating many-to-many relationship between data consumers and provides in their system. After careful consideration, they decided public cloud is the perfect environment to support their needs. Solution Concept MJTelco is running a successful proof-of-concept (PoC) project in its labs. They have two primary needs: 1. Scale and harden their PoC to support significantly more data flows generated when they ramp to more than 50,000 installations. 2. Refine their machine-learning cycles to verify and improve the dynamic models they use to control topology definition. MJTelco will also use three separate operating environments - development/test, staging, and production - to meet the needs of running experiments, deploying new features, and serving production customers. Business Requirements 1. Scale up their production environment with minimal cost, instantiating resources when and where needed in an unpredictable, distributed telecom user community. 2. Ensure security of their proprietary data to protect their leading-edge machine learning and analysis. 3. Provide reliable and timely access to data for analysis from distributed research workers 4. Maintain isolated environments that support rapid iteration of their machine-learning models without affecting their customers. Technical Requirements 1. Ensure secure and efficient transport and storage of telemetry data 2. Rapidly scale instances to support between 10,000 and 100,000 data providers with multiple flows each. 3. Allow analysis and presentation against data tables tracking up to 2 years of data storing approximately 100m records/day 4. Support rapid iteration of monitoring infrastructure focused on awareness of data pipeline problems both in telemetry flows and in production learning cycles. CEO Statement Our business model relies on our patents, analytics and dynamic machine learning. Our inexpensive hardware is organized to be highly reliable, which gives us cost advantages. We need to quickly stabilize our large distributed data pipelines to meet our reliability and capacity commitments. CTO Statement Our public cloud services must operate as advertised. We need resources that scale and keep our data secure.We also need environments in which our data scientists can carefully study and quickly adapt our models.Because we rely on automation to process our data, we also need our development and test environments to work as we iterate. CFO Statement The project is too large for us to maintain the hardware and software required for the data and analysis. Also, we cannot afford to staff an operations team to monitor so many data feeds, so we will rely on automation and infrastructure. Google Cloud's machine learning will allow our quantitative researchers to work on our high-value problems instead of problems with our data pipelines.
Question 25
Testlet 2
Single choice
Given the record streams MJTelco is interested in ingesting per day, they are concerned about the cost of Google BigQuery increasing. MJTelco asks you to provide a design solution. They require a single large data table called tracking_table. Additionally, they want to minimize the cost of daily queries while performing fine-grained analysis of each day's events. They also want to use streaming ingestion. What should you do?
-
A
Create a table called tracking_table and include a DATE column.
-
B
Create a partitioned table called tracking_table and include a TIMESTAMP column.
-
C
Create sharded tables for each day following the pattern tracking_table_YYYYMMDD.
-
D
Create a table called tracking_table with a TIMESTAMP column to represent the day.
Reveal answer details
Close answer details
Question 26
Single choice
Your neural network model is taking days to train. You want to increase the training speed. What can you do?
-
A
Subsample your test dataset.
-
B
Subsample your training dataset.
-
C
Increase the number of input features to your model.
-
D
Increase the number of layers in your neural network.
Reveal answer details
Close answer details
Correct answerD
ExplanationReferences: https://towardsdatascience.com/how-to-increase-the-accuracy-of-a-neural-network-9f5d1c6f407d
Question 27
Multiple choice
Which of the following job types are supported by Cloud Dataproc (select 3 answers)?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Correct answersA, B, D
ExplanationCloud Dataproc provides out-of-the box and end-to-end support for many of the most popular job types, including Spark, Spark SQL, PySpark, MapReduce, Hive, and Pig jobs. References: https://cloud.google.com/dataproc/docs/resources/faq#what_type_of_jobs_can_i_run
Question 28
Single choice
Which of these statements about BigQuery caching is true?
-
A
By default, a query's results are not cached.
-
B
BigQuery caches query results for 48 hours.
-
C
Query results are cached even if you specify a destination table.
-
D
There is no charge for a query that retrieves its results from cache.
Reveal answer details
Close answer details
Correct answerD
ExplanationWhen query results are retrieved from a cached results table, you are not charged for the query. BigQuery caches query results for 24 hours, not 48 hours. Query results are not cached if you specify a destination table. A query's results are always cached except under certain conditions, such as if you specify a destination table. References: https://cloud.google.com/bigquery/querying-data#query-caching
Question 29
Single choice
For the best possible performance, what is the recommended zone for your Compute Engine instance and Cloud Bigtable instance?
-
A
Have the Compute Engine instance in the furthest zone from the Cloud Bigtable instance.
-
B
Have both the Compute Engine instance and the Cloud Bigtable instance to be in different zones.
-
C
Have both the Compute Engine instance and the Cloud Bigtable instance to be in the same zone.
-
D
Have the Cloud Bigtable instance to be in the same zone as all of the consumers of your data.
Reveal answer details
Close answer details
Correct answerC
ExplanationIt is recommended to create your Compute Engine instance in the same zone as your Cloud Bigtable instance for the best possible performance, If it's not possible to create a instance in the same zone, you should create your instance in another zone within the same region. For example, if your Cloud Bigtable instance is located in us-central1-b, you could create your instance in us-central1-f. This change may result in several milliseconds of additional latency for each Cloud Bigtable request. It is recommended to avoid creating your Compute Engine instance in a different region from your Cloud Bigtable instance, which can add hundreds of milliseconds of latency to each Cloud Bigtable request. References: https://cloud.google.com/bigtable/docs/creating-compute-instance
Question 30
Single choice
You are building a new application that you need to collect data from in a scalable way. Data arrives continuously from the application throughout the day, and you expect to generate approximately 150 GB of JSON data per day by the end of the year. Your requirements are: 1. Decoupling producer from consumer 2. Space and cost-efficient storage of the raw ingested data, which is to be stored indefinitely 3. Near real-time SQL query 4. Maintain at least 2 years of historical data, which will be queried with SQ Which pipeline should you use to meet these requirements?
-
A
Create an application that provides an API. Write a tool to poll the API and write data to Cloud Storage as gzipped JSON files.
-
B
Create an application that writes to a Cloud SQL database to store the data. Set up periodic exports of the database to write to Cloud Storage and load into BigQuery.
-
C
Create an application that publishes events to Cloud Pub/Sub, and create Spark jobs on Cloud Dataproc to convert the JSON data to Avro format, stored on HDFS on Persistent Disk.
-
D
Create an application that publishes events to Cloud Pub/Sub, and create a Cloud Dataflow pipeline that transforms the JSON event payloads to Avro, writing the data to Cloud Storage and BigQuery.
Reveal answer details
Close answer details
Question 31
Single choice
You are designing a pipeline that publishes application events to a Pub/Sub topic. You need to aggregate events across hourly intervals before loading the results to BigQuery for analysis. Your solution must be scalable so it can process and load large volumes of events to BigQuery. What should you do?
-
A
Create a streaming Dataflow job to continually read from the Pub/Sub topic and perform the necessary aggregations using tumbling windows
-
B
Schedule a batch Dataflow job to run hourly, pulling all available messages from the Pub-Sub topic and performing the necessary aggregations
-
C
Schedule a Cloud Function to run hourly, pulling all avertable messages from the Pub/Sub topic and performing the necessary aggregations
-
D
Create a Cloud Function to perform the necessary data processing that executes using the Pub/Sub trigger every time a new message is published to the topic.
Reveal answer details
Close answer details
Question 32
Single choice
Does Dataflow process batch data pipelines or streaming data pipelines?
-
A
Only Batch Data Pipelines
-
B
Both Batch and Streaming Data Pipelines
-
C
Only Streaming Data Pipelines
-
D
Reveal answer details
Close answer details
Correct answerB
ExplanationDataflow is a unified processing model, and can execute both streaming and batch data pipelines References: https://cloud.google.com/dataflow/
Question 33
Single choice
What is the HBase Shell for Cloud Bigtable?
-
A
The HBase shell is a GUI based interface that performs administrative tasks, such as creating and deleting tables.
-
B
The HBase shell is a command-line tool that performs administrative tasks, such as creating and deleting tables.
-
C
The HBase shell is a hypervisor based shell that performs administrative tasks, such as creating and deleting new virtualized instances.
-
D
The HBase shell is a command-line tool that performs only user account management functions to grant access to Cloud Bigtable instances.
Reveal answer details
Close answer details
Correct answerB
ExplanationThe HBase shell is a command-line tool that performs administrative tasks, such as creating and deleting tables. The Cloud Bigtable HBase client for Java makes it possible to use the HBase shell to connect to Cloud Bigtable. References: https://cloud.google.com/bigtable/docs/installing-hbase-shell
Question 34
Single choice
You need to choose a database for a new project that has the following requirements: 1. Fully managed 2. Able to automatically scale up 3. Transactionally consistent 4. Able to scale up to 6 TB 5. Able to be queried using SQL Which database do you choose?
-
A
-
B
-
C
-
D
Reveal answer details
Close answer details
Question 35
Single choice
You need to set access to BigQuery for different departments within your company. Your solution should comply with the following requirements: 1. Each department should have access only to their data. Each department will have one or more leads who need to be able to create and update tables and provide them to their team. 2. Each department has data analysts who need to be able to query but not modify data. How should you set access to the data in BigQuery?
-
A
Create a dataset for each department. Assign the department leads the role of OWNER, and assign the data analysts the role of WRITER on their dataset.
-
B
Create a dataset for each department. Assign the department leads the role of WRITER, and assign the data analysts the role of READER on their dataset.
-
C
Create a table for each department. Assign the department leads the role of Owner, and assign the data analysts the role of Editor on the project the table is in.
-
D
Create a table for each department. Assign the department leads the role of Editor, and assign the data analysts the role of Viewer on the project the table is in.
Reveal answer details
Close answer details
Question 36
Single choice
Your startup has never implemented a formal security policy. Currently, everyone in the company has access to the datasets stored in Google BigQuery. Teams have freedom to use the service as they see fit, and they have not documented their use cases. You have been asked to secure the data warehouse. You need to discover what everyone is doing. What should you do first?
-
A
Use Google Stackdriver Audit Logs to review data access.
-
B
Get the identity and access management IIAM) policy of each table
-
C
Use Stackdriver Monitoring to see the usage of BigQuery query slots.
-
D
Use the Google Cloud Billing API to see what account the warehouse is being billed to.
Reveal answer details
Close answer details
Question 37
Single choice
Your team is working on a binary classification problem. You have trained a support vector machine (SVM) classifier with default parameters, and received an area under the Curve (AUC) of 0.87 on the validation set. You want to increase the AUC of the model. What should you do?
-
A
Perform hyperparameter tuning
-
B
Train a classifier with deep neural networks, because neural networks would always beat SVMs
-
C
Deploy the model and measure the real-world AUC; it's always higher because of generalization
-
D
Scale predictions you get out of the model (tune a scaling factor as a hyperparameter) in order to get the highest AUC
Reveal answer details
Close answer details
Correct answerA
Explanationhttps://towardsdatascience.com/understanding-hyperparameters-and-its-optimisation-techniques-f0debba07568
Question 38
Single choice
You want to use Google Stackdriver Logging to monitor Google BigQuery usage. You need an instant notification to be sent to your monitoring tool when new data is appended to a certain table using an insert job, but you do not want to receive notifications for other tables. What should you do?
-
A
Make a call to the Stackdriver API to list all logs, and apply an advanced filter.
-
B
In the Stackdriver logging admin interface, and enable a log sink export to BigQuery.
-
C
In the Stackdriver logging admin interface, enable a log sink export to Google Cloud Pub/Sub, and subscribe to the topic from your monitoring tool.
-
D
Using the Stackdriver API, create a project sink with advanced log filter to export to Pub/Sub, and subscribe to the topic from your monitoring tool.
Reveal answer details
Close answer details
Question 39
Single choice
You work for an airline and you need to store weather data in a BigQuery table Weather data will be used as input to a machine learning model. The model only uses the last 30 days of weather data. You want to avoid storing unnecessary data and minimize costs. What should you do?
-
A
Create a BigQuery table where each record has an ingestion timestamp Run a scheduled query to delete all the rows with an ingestion timestamp older than 30 days.
-
B
Create a BigQuery table partitioned by ingestion time Set up partition expiration to 30 days.
-
C
Create a BigQuery table partitioned by datetime value of the weather date Set up partition expiration to 30 days.
-
D
Create a BigQuery table with a datetime column for the day the weather data refers to.Run a scheduled query to delete rows with a datetime value older than 30 days.
Reveal answer details
Close answer details
Correct answerB
ExplanationPartitioning a table by ingestion time means that the data is divided into partitions based on the time when the data was loaded into the table. This allows you to delete or archive old data by setting a partition expiration policy. You can specify the number of days to keep the data in each partition, and BigQuery automatically deletes the data when it expires. This way, you can avoid storing unnecessary data and minimize costs.
Question 40
Single choice
What is the general recommendation when designing your row keys for a Cloud Bigtable schema?
-
A
Include multiple time series values within the row key
-
B
Keep the row keep as an 8 bit integer
-
C
Keep your row key reasonably short
-
D
Keep your row key as long as the field permits
Reveal answer details
Close answer details
Correct answerC
ExplanationA general guide is to, keep your row keys reasonably short. Long row keys take up additional memory and storage and increase the time it takes to get responses from the Cloud Bigtable server. References: https://cloud.google.com/bigtable/docs/schema-design#row-keys
Question 41
Multiple choice
You have a BigQuery table that contains customer data, including sensitive information such as names and addresses. You need to share the customer data with your data analytics and consumer support teams securely. The data analytics team needs to access the data of all the customers, but must not be able to access the sensitive data. The consumer support team needs access to all data columns, but must not be able to access customers that no longer have active contracts. You enforced these requirements by using an authorized dataset and policy tags After implementing these steps, the data analytics team reports that they still have access to the sensitive columns. You need to ensure that the data analytics team does not have access to restricted data What should you do? Choose 2 answers
-
A
Create two separate authorized datasets; one for the data analytics team and another for the consumer support team.
-
B
Ensure that the data analytics team members do not have the Data Catalog Fine-Grained Reader role for the policy tags.
-
C
Enforce access control in the policy tag taxonomy.
-
D
Remove the bigquery. dataViewer role from the data analytics team on the authorized datasets.
-
E
Replace the authorized dataset with an authorized view Use row-level security and apply filter_expression to limit data access.
Reveal answer details
Close answer details
Correct answersB, C
ExplanationTo ensure that the data analytics team does not have access to sensitive columns, you should: B. Ensure that the data analytics team members do not have the Data Catalog Fine-Grained Reader role for the policy tags. This role allows users to read metadata for data assets that have policy tags applied, which could include sensitive information. C. Enforce access control in the policy tag taxonomy. By setting access control at the policy tag level, you can restrict access to specific columns within a dataset, ensuring that only authorized users can view sensitive data.
Question 42
Single choice
You are a head of BI at a large enterprise company with multiple business units that each have different priorities and budgets. You use on-demand pricing for BigQuery with a quota of 2K concurrent on-demand slots per project. Users at your organization sometimes don't get slots to execute their query and you need to correct this. You'd like to avoid introducing new projects to your account. What should you do?
-
A
Convert your batch BQ queries into interactive BQ queries.
-
B
Create an additional project to overcome the 2K on-demand per-project quota.
-
C
Switch to flat-rate pricing and establish a hierarchical priority model for your projects.
-
D
Increase the amount of concurrent slots per project at the Quotas page at the Cloud Console.
Reveal answer details
Close answer details
Correct answerC
ExplanationReference https://cloud.google.com/blog/products/gcp/busting-12-myths-about-bigquery
Question 43
Single choice
You designed a database for patient records as a pilot project to cover a few hundred patients in three clinics. Your design used a single database table to represent all patients and their visits, and you used self-joins to generate reports. The server resource utilization was at 50%. Since then, the scope of the project has expanded. The database must now store 100 times more patient records. You can no longer run the reports, because they either take too long or they encounter errors with insufficient compute resources. How should you adjust the database design?
-
A
Add capacity (memory and disk space) to the database server by the order of 200.
-
B
Shard the tables into smaller ones based on date ranges, and only generate reports with prespecified date ranges.
-
C
Normalize the master patient-record table into the patient table and the visits table, and create other necessary tables to avoid self-join.
-
D
Partition the table into smaller tables, with one for each clinic. Run queries against the smaller table pairs, and use unions for consolidated reports.
Reveal answer details
Close answer details
Question 44
Single choice
You are migrating your data warehouse to BigQuery. You have migrated all of your data into tables in a dataset. Multiple users from your organization will be using the data. They should only see certain tables based on their team membership. How should you set user permissions?
-
A
Assign the users/groups data viewer access at the table level for each table
-
B
Create SQL views for each team in the same dataset in which the data resides, and assign the users/ groups data viewer access to the SQL views
-
C
Create authorized views for each team in the same dataset in which the data resides, and assign the users/groups data viewer access to the authorized views
-
D
Create authorized views for each team in datasets created for each team. Assign the authorized views data viewer access to the dataset in which the data resides. Assign the users/groups data viewer access to the datasets in which the authorized views reside
Reveal answer details
Close answer details
Question 45
Single choice
When running a pipeline that has a BigQuery source, on your local machine, you continue to get permission denied errors. What could be the reason for that?
-
A
Your gcloud does not have access to the BigQuery resources
-
B
BigQuery cannot be accessed from local machines
-
C
You are missing gcloud on your machine
-
D
Pipelines cannot be run locally
Reveal answer details
Close answer details
Correct answerA
ExplanationWhen reading from a Dataflow source or writing to a Dataflow sink using DirectPipelineRunner, the Cloud Platform account that you configured with the gcloud executable will need access to the corresponding source/sink References: https://cloud.google.com/dataflow/java-sdk/JavaDoc/com/google/cloud/dataflow/sdk/runners/ DirectPipelineRunner
Question 46
Single choice
You need to deploy additional dependencies to all of a Cloud Dataproc cluster at startup using an existing initialization action. Company security policies require that Cloud Dataproc nodes do not have access to the Internet so public initialization actions cannot fetch resources. What should you do?
-
A
Deploy the Cloud SQL Proxy on the Cloud Dataproc master
-
B
Use an SSH tunnel to give the Cloud Dataproc cluster access to the Internet
-
C
Copy all dependencies to a Cloud Storage bucket within your VPC security perimeter
-
D
Use Resource Manager to add the service account used by the Cloud Dataproc cluster to the Network User role
Reveal answer details
Close answer details
Question 47
Single choice
You are using Cloud Bigtable to persist and serve stock market data for each of the major indices. To serve the trading application, you need to access only the most recent stock prices that are streaming in How should you design your row key and tables to ensure that you can access the data with the most simple query?
-
A
Create one unique table for all of the indices, and then use the index and timestamp as the row key design
-
B
Create one unique table for all of the indices, and then use a reverse timestamp as the row key design.
-
C
For each index, have a separate table and use a timestamp as the row key design
-
D
For each index, have a separate table and use a reverse timestamp as the row key design
Reveal answer details
Close answer details
Question 48
Single choice
Your organization has two Google Cloud projects, project A and project B. In project A, you have a Pub/ Sub topic that receives data from confidential sources. Only the resources in project A should be able to access the data in that topic. You want to ensure that project B and any future project cannot access data in the project A topic. What should you do?
-
A
Configure VPC Service Controls in the organization with a perimeter around the VPC of project A.
-
B
Add firewall rules in project A so only traffic from the VPC in project A is permitted.
-
C
Configure VPC Service Controls in the organization with a perimeter around project A.
-
D
Use Identity and Access Management conditions to ensure that only users and service accounts in project A can access resources in project.
Reveal answer details
Close answer details
Correct answerD
ExplanationIdentity and Access Management (IAM) is the recommended way to control access to Pub/Sub resources, such as topics and subscriptions. IAM allows you to grant roles and permissions to users and service accounts at the project level or the individual resource level. You can also use IAM conditions to specify additional attributes for granting or denying access, such as time, date, or origin. By using IAM conditions, you can ensure that only the resources in project A can access the data in the project A topic, regardless of the network configuration or the VPC Service Controls. You can also prevent project B and any future project from accessing the data in the project A topic by not granting them any roles or permissions on the topic. Option A is not a good solution, as VPC Service Controls are designed to prevent data exfiltration from Google Cloud resources to the public internet, not to control access between Google Cloud projects. VPC Service Controls create a perimeter around the resources of one or more projects, and restrict the communication with resources outside the perimeter. However, VPC Service Controls do not apply to Pub/ Sub, as Pub/Sub is not associated with any specific IP address or VPC network. Therefore, configuring VPC Service Controls with a perimeter around the VPC of project A would not prevent project B or any future project from accessing the data in the project A topic, if they have the necessary IAM roles and permissions. Option B is not a good solution, as firewall rules are used to control the ingress and egress traffic to and from the VPC network of a project. Firewall rules do not apply to Pub/Sub, as Pub/Sub is not associated with any specific IP address or VPC network. Therefore, adding firewall rules in project A to only permit traffic from the VPC in project A would not prevent project B or any future project from accessing the data in the project A topic, if they have the necessary IAM roles and permissions. Option C is not a good solution, as VPC Service Controls are designed to prevent data exfiltration from Google Cloud resources to the public internet, not to control access between Google Cloud projects. VPC Service Controls create a perimeter around the resources of one or more projects, and restrict the communication with resources outside the perimeter. However, VPC Service Controls do not apply to Pub/ Sub, as Pub/Sub is not associated with any specific IP address or VPC network. Therefore, configuring VPC Service Controls with a perimeter around project A would not prevent project B or any future project from accessing the data in the project A topic, if they have the necessary IAM roles and permissions. References: Access control with IAM | Cloud Pub/Sub Documentation | Google Cloud, [Using IAM Conditions | Cloud IAM Documentation | Google Cloud], [VPC Service Controls overview | Google Cloud], [Using VPC Service Controls | Google Cloud], [Pub/Sub tier capabilities | Memorystore for Redis | Google Cloud].
Question 49
Single choice
You use a dataset in BigQuery for analysis. You want to provide third-party companies with access to the same dataset. You need to keep the costs of data sharing low and ensure that the data is current. Which solution should you choose?
-
A
Create an authorized view on the BigQuery table to control data access, and provide third-party companies with access to that view.
-
B
Use Cloud Scheduler to export the data on a regular basis to Cloud Storage, and provide third-party companies with access to the bucket.
-
C
Create a separate dataset in BigQuery that contains the relevant data to share, and provide third-party companies with access to the new dataset.
-
D
Create a Cloud Dataflow job that reads the data in frequent time intervals, and writes it to the relevant BigQuery dataset or Cloud Storage bucket for third-party companies to use.
Reveal answer details
Close answer details
Question 50
Single choice
Your chemical company needs to manually check documentation for customer order. You use a pull subscription in Pub/Sub so that sales agents get details from the order. You must ensure that you do not process orders twice with different sales agents and that you do not add more complexity to this workflow. What should you do?
-
A
Create a transactional database that monitors the pending messages.
-
B
Create a new Pub/Sub push subscription to monitor the orders processed in the agent's system.
-
C
Use Pub/Sub exactly-once delivery in your pull subscription.
-
D
Use a Deduphcate PTransform in Dataflow before sending the messages to the sales agents.
Reveal answer details
Close answer details
Correct answerC
ExplanationPub/Sub exactly-once delivery is a feature that guarantees that subscriptions do not receive duplicate deliveries of messages based on a Pub/Sub-defined unique message ID. This feature is only supported by the pull subscription type, which is what you are using in this scenario. By enabling exactly-once delivery, you can ensure that each order is processed only once by a sales agent, and that no order is lost or duplicated. This also simplifies your workflow, as you do not need to create a separate database or subscription to monitor the pending or processed messages. References: Exactly-once delivery | Cloud Pub/Sub Documentation Cloud Pub/Sub Exactly-once Delivery feature is now Generally Available (GA)
|