nerdexam
Google

PROFESSIONAL-DATA-ENGINEER · Question #138

Your organization has been collecting and analyzing data in Google BigQuery for 6 months. The majority of the data analyzed is placed in a time-partitioned table named events_partitioned. To reduce…

The correct answer is C. Create a new view over events_partitioned using standard SQL D. Create a service account for the ODBC connection to use for authentication. C and D address the two distinct problems introduced by ODBC: dialect incompatibility and authentication. The BigQuery ODBC driver only supports standard SQL - it cannot execute legacy SQL, so the existing events view would fail at query time. You must create a new view…

Submitted by tarun92· Mar 30, 2026Building and operationalizing data processing systems

Question

Your organization has been collecting and analyzing data in Google BigQuery for 6 months. The majority of the data analyzed is placed in a time-partitioned table named events_partitioned. To reduce the cost of queries, your organization created a view called events, which queries only the last 14 days of data. The view is described in legacy SQL. Next month, existing applications will be connecting to BigQuery to read the events data via an ODBC connection. You need to ensure the applications can connect. Which two actions should you take? (Choose two.)

Options

  • ACreate a new view over events using standard SQL
  • BCreate a new partitioned table using a standard SQL query
  • CCreate a new view over events_partitioned using standard SQL
  • DCreate a service account for the ODBC connection to use for authentication
  • ECreate a Google Cloud Identity and Access Management (Cloud IAM) role for the ODBC connection and shared "events"

How the community answered

(23 responses)
  • A
    17% (4)
  • B
    4% (1)
  • C
    74% (17)
  • E
    4% (1)

Explanation

C and D address the two distinct problems introduced by ODBC: dialect incompatibility and authentication. The BigQuery ODBC driver only supports standard SQL - it cannot execute legacy SQL, so the existing events view would fail at query time. You must create a new view directly over events_partitioned (not over events) because a standard SQL view cannot reference a legacy SQL view. For authentication, ODBC connections are application-level, non-interactive clients, making a service account the correct credential mechanism - not a human user login.

A is wrong for the same reason as above: standard SQL cannot wrap a legacy SQL view, so building events_over_events would still break.
B is wrong because duplicating data into a new partitioned table is unnecessary and costly - a standard SQL view achieves the same result without data movement.
E is wrong because an IAM role defines permissions, not credentials; you'd assign an IAM role to the service account, but the role alone cannot authenticate a connection.

Memory tip: ODBC = Standard SQL + Service account - two S's. Whenever an application (non-human) needs to connect to BigQuery, always pair a new standard SQL object with a service account.

Topics

#BigQuery Views#SQL Dialects#ODBC Connectivity#Service Accounts

Community Discussion

No community discussion yet for this question.

Full PROFESSIONAL-DATA-ENGINEER Practice