Who pays query costs on datasets across multiple u

2019-08-27 20:01发布

问题:

I've granted an internal user permission to query datasets in our Project, under the 'IAM & admin' section.

When the user queries the tables, will the cost of running the queries be billed to the Project's account? Ideally any costs associated with a user running a query would be charged to one central account. Or will the user be charged on their own separate bill?

Does billing work the same using the 'Share Dataset' option instead of adding a user under the IAM section? As in, the user email whom the dataset is shared with will have any related query costs applied to the project owner's account or their own account?

回答1:

BigQuery storage costs are billed to the billing account attached to the project where data resides

Meantime, charges associated with BigQuery jobs (query) are billed to the billing account attached to the project from which user runs jobs (query)

If user uses BigQuery UI - this is a project you (user) see on top of projects lists and it gets billed for all queries executed within it - no matter where data that is being queried actually resides

In case if user uses API or any client library - so called billing project is a part of respective API or client's method that needs to be provided by user

For project to be qualified for user to run queries from and thus to have use it as a billing project - user must have bigquery.jobs.create permission set in IAM
See more about roles and permissions here - https://cloud.google.com/bigquery/docs/access-control#permissions_and_roles

Meantime, using the 'Share Dataset' option - just gives user specific permission to have access to respective dataset

Hope this clears your question