Google BigQuery Spark 连接器:如何在追加时忽略未知值
Posted
技术标签:
【中文标题】Google BigQuery Spark 连接器:如何在追加时忽略未知值【英文标题】:Google BigQuery Spark Connector: How to ignore unknown values on append 【发布时间】:2017-03-15 12:40:16 【问题描述】:我们使用 Google BigQuery Spark 连接器将存储在 Parquet 文件中的数据导入 BigQuery。使用自定义工具,我们生成了 BigQuery 所需的架构文件,并在我们的导入代码 (Scala) 中引用该文件。
但是,我们的数据并不真正遵循固定且定义明确的架构,在某些情况下,可能会向单个数据集添加额外的列。这就是为什么在使用命令行工具 bq
试验 BigQuery 时,我们几乎总是使用 --ignore_unknown_values
,否则很多导入都会失败。
很遗憾,我们在 BigQuery Spark 连接器 com.google.cloud.bigdataoss:bigquery-connector:0.10.1-hadoop2
中找不到等效的配置选项。存在吗?
【问题讨论】:
【参考方案1】:不幸的是,目前还没有通过连接器进行检测,即使我们现在添加它,正式版本也需要几周时间才能在任何地方部署。我filed an issue 在 github 存储库中跟踪此功能请求。
同时,如果您想构建自己的连接器版本,您可以在BigQueryRecordWriter(如果您使用旧的“直接输出格式”)或BigQueryHelper(如果您正在使用较新的“间接输出格式”,并添加如下一行:
loadConfig.setIgnoreUnknownValues(true);
【讨论】:
感谢您的澄清。我们将考虑修补连接器。 现在添加了吗?状态仍然是开放的。谢谢以上是关于Google BigQuery Spark 连接器:如何在追加时忽略未知值的主要内容,如果未能解决你的问题,请参考以下文章
运行时异常 java.lang.NoSuchMethodError: com.google.common.base.Optional.toJavaUtil()L 与 Spark-BigQuery 连接
在Apache Spark中使用Bigquery Connector时如何设置分区数?
使用 spark 将 parquet 数据从 Google 云存储加载到 BigQuery
Google BigQuery 与 Spark 和 Parquet
如何将 Spark-BigQuery_connector 用于现有的 spark 环境(不使用 google dataproc)