BigQuery 无法读取位置:亚洲
BigQuery Cannot read in location: asia
我正在尝试查询存储桶所在的联合 table
Multi-region
asia (multiple regions in Asia)
。 BigQuery 数据集信息
Data location:
asia-south1
当我 运行 一个简单的 select * from ...
我得到:
无法读取位置:亚洲
您遇到此错误是因为您的存储桶是多区域的,而您的 BigQuery 数据集是区域性的。 general rule for location consideration是外部数据和数据集应该在同一个位置。
截至目前,multi region BigQuery dataset 适用于美国和欧盟。因此,将亚洲多区域用于外部 table 时会出现错误。要解决此问题,您可以:
- 在 asia-south1 中创建一个新的桶。使用 Cloud Storage Transfer service 将文件从旧存储桶传输到新存储桶。然后在asia-south1中也创建数据集,应该可以无误查询。
- 如果您真的想要在多区域设置中使用您的数据,您可以创建一个位于美国或欧盟的新存储桶和 BQ 数据集。只需将您的文件传输到新存储桶,您就可以执行查询。
注意:无法编辑存储桶的位置。创建存储桶时,您会永久定义其名称、地理位置以及它所属的项目。因此,上面提到的建议修复。
我正在尝试查询存储桶所在的联合 table
Multi-region
asia (multiple regions in Asia)
。 BigQuery 数据集信息
Data location:
asia-south1
当我 运行 一个简单的 select * from ...
我得到:
无法读取位置:亚洲
您遇到此错误是因为您的存储桶是多区域的,而您的 BigQuery 数据集是区域性的。 general rule for location consideration是外部数据和数据集应该在同一个位置。
截至目前,multi region BigQuery dataset 适用于美国和欧盟。因此,将亚洲多区域用于外部 table 时会出现错误。要解决此问题,您可以:
- 在 asia-south1 中创建一个新的桶。使用 Cloud Storage Transfer service 将文件从旧存储桶传输到新存储桶。然后在asia-south1中也创建数据集,应该可以无误查询。
- 如果您真的想要在多区域设置中使用您的数据,您可以创建一个位于美国或欧盟的新存储桶和 BQ 数据集。只需将您的文件传输到新存储桶,您就可以执行查询。
注意:无法编辑存储桶的位置。创建存储桶时,您会永久定义其名称、地理位置以及它所属的项目。因此,上面提到的建议修复。