如何在onUpdate事件上更新大查询中的数据

时间:2017-08-15 16:35:55

标签: javascript firebase google-bigquery

我正在将数据从firebase导入到大查询,该查询在onWrite事件中正常工作并使用了table.insert函数。 现在我想在onUpdate事件的大查询中更新数据,但table.update函数不可用,而不是work.suggest其他方式。 下面是我的代码

exports.updatetobigquery = 
functions.database.ref('/mn_users/{userId}/').onUpdate(event => {
  const dataset = 
bigquery.dataset('KHUSHUApp');//functions.config().bigquery.datasetname);

  const table = 
dataset.table('mn_users');//functions.config().bigquery.tablename);
      console.log('Uppercasing', event.data.val());
  return table.update({
    'id': event.data.key,
    'name': event.data.val().name,
    'email': event.data.val().email
  });

});

1 个答案:

答案 0 :(得分:1)

处理此问题的最佳方式:

  • BigQuery具有更新数据的能力,但BigQuery是一个分析数据库 - 而不是针对更新而优化的数据库。
  • 因此,如果您有其他方法可以实现目标,请避免在BigQuery中更新数据。
  • 而不是更新,将新行发送到BigQuery - 重复删除并在分析后合并最新值。当您需要能够在每次状态更改时返回并分析该模式时,此模式非常有用。