【发布时间】:2017-10-02 05:02:42
【问题描述】:
我正在使用 golang 实现对 google bigquery 的插入。 该文件有重复,需要每天更新。但是,不应将重复项插入到 bigquery 中。 我使用谷歌云平台和golang的一些api。但是,我还没有发现任何 api 可以在插入之前检查是否唯一,或者为模式中的特定字段设置为唯一。 我正在使用包装器 api 并直接调用该函数。但是,该函数不检查字段是否唯一。请建议任何用于 golang 的 bigquery api 具有唯一的键检查或模式的唯一键设置。非常感谢!我会立即更新回复。
【问题讨论】:
-
使用 tabledata 的 list 方法和过滤器来检查条目是否已经存在。基本上,做一个选择,如果你得到了一些东西,那么不要插入相应的记录,如果你没有,那么它是新的,你可以安全地插入。
-
真的不能那样做。它会产生费用。
-
如果字段没有主键约束来阻止插入,就无法在不增加插入成本的情况下确保唯一性。没有办法检查记录是否存在。
-
谢谢埃文。我想我必须选择不避免重复。
标签: go unique google-bigquery