Skip to content

Commit d4ccdb9

Browse files
authored
Merge pull request tylertreat#117 from nrfk/master
Add possibility to decide location (EU or US) of a dataset when creat…
2 parents 5049eeb + ee3e54f commit d4ccdb9

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

bigquery/client.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1655,7 +1655,7 @@ def _raise_executing_exception_if_error(self, job):
16551655
# DataSet manipulation methods
16561656
#
16571657
def create_dataset(self, dataset_id, friendly_name=None, description=None,
1658-
access=None):
1658+
access=None, location=None):
16591659
"""Create a new BigQuery dataset.
16601660
16611661
Parameters
@@ -1670,6 +1670,9 @@ def create_dataset(self, dataset_id, friendly_name=None, description=None,
16701670
access : list, optional
16711671
Indicating access permissions (see
16721672
https://developers.google.com/bigquery/docs/reference/v2/datasets#resource)
1673+
location : str, optional
1674+
Indicating where dataset should be stored: EU or US (see
1675+
https://developers.google.com/bigquery/docs/reference/v2/datasets#resource)
16731676
16741677
Returns
16751678
-------
@@ -1682,7 +1685,8 @@ def create_dataset(self, dataset_id, friendly_name=None, description=None,
16821685
dataset_data = self.dataset_resource(dataset_id,
16831686
friendly_name=friendly_name,
16841687
description=description,
1685-
access=access)
1688+
access=access,
1689+
location=location)
16861690

16871691
response = datasets.insert(projectId=self.project_id,
16881692
body=dataset_data).execute()
@@ -1843,7 +1847,7 @@ def patch_dataset(self, dataset_id, friendly_name=None, description=None,
18431847
return {}
18441848

18451849
def dataset_resource(self, ref_id, friendly_name=None, description=None,
1846-
access=None):
1850+
access=None, location=None):
18471851
"""See
18481852
https://developers.google.com/bigquery/docs/reference/v2/datasets#resource
18491853
@@ -1857,6 +1861,8 @@ def dataset_resource(self, ref_id, friendly_name=None, description=None,
18571861
An optional description for the dataset
18581862
access : list, optional
18591863
Indicating access permissions
1864+
location: str, optional, 'EU' or 'US'
1865+
An optional geographical location for the dataset(EU or US)
18601866
18611867
Returns
18621868
-------
@@ -1875,6 +1881,8 @@ def dataset_resource(self, ref_id, friendly_name=None, description=None,
18751881
data["description"] = description
18761882
if access:
18771883
data["access"] = access
1884+
if location:
1885+
data["location"] = location
18781886

18791887
return data
18801888

0 commit comments

Comments
 (0)