为了账号安全,请及时绑定邮箱和手机立即绑定

Golang:Bigquery 在插入前检查唯一键

Golang:Bigquery 在插入前检查唯一键

Go
慕田峪4524236 2021-12-06 19:38:06
我正在使用 golang 实现对 google bigquery 的插入。文件有重复,需要每天更新。但是,不应将重复项插入到 bigquery 中。我使用了谷歌云平台和 golang 的一些 api。但是,我还没有发现任何 apis 可以在插入之前检查是否唯一,或者为架构中的特定字段设置为唯一。我正在使用包装器 api 并直接调用该函数。但是,该函数不会检查该字段是否唯一。请建议任何用于 golang 的 bigquery api 都具有对架构的唯一键检查或唯一键设置。非常感谢!我会立即更新回复。
查看完整描述

2 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

在 BigQuery 中,没有任何 API 或函数专门对给定字段进行唯一性检查
您可以通过将插入构建为源与目标的连接并仅插入唯一的来满足您的要求
这可能需要您首先将数据插入到“临时” table 然后在GBQ中做上面的join

查看完整回答
反对 回复 2021-12-06
?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

检查StructSaver结构的文档。


它有一个 field InserdID,正是你要问的:


// If non-empty, BigQuery will use InsertID to de-duplicate insertions

// of this row on a best-effort basis.

InsertID string


查看完整回答
反对 回复 2021-12-06
  • 2 回答
  • 0 关注
  • 183 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信