我正在开发一种工具来从网站上获取大约3年的历史数据,以便执行一些数据分析。机器学习。
我要求的报告的尺寸为:
[ ga:cityId, ga:dateHour, ga:userType, ga:deviceCategory ]
我的出发点是导入到postgres数据库(数据可能最终存在于其他地方,但我们有从关系数据库开始的好理由)。
我已经在postgres表的[ ga:cityId, ga:dateHour, ga:userType, ga:deviceCategory ]
元组上定义了一个唯一索引,由于该元组的重复,我的导入作业目前通常每30000-50000行失败。
什么会导致谷歌返回重复的行?
我按照1000行/语句对插入进行批处理,因为一次一行会非常耗时,所以我认为我最好的解决方法是在初始导入期间禁用唯一索引,重复数据删除,然后重新启用它,并每天导入每日新数据。其他策略?
答案 0 :(得分:2)
如果时间范围是唯一的,则不应该从Google返回重复的报告。
您使用绝对或相对(呈现)日期吗?如果是后者,则应确保相对时间(即现在)的进展导致的时间段变化不会导致重叠。
使用相对时间段也可能导致数据出现空白。