【发布时间】:2016-03-30 00:00:25
【问题描述】:
背景
我们希望将不可变事件存储在(最好)托管服务中。一个事件的平均大小小于 1 Kb,我们每秒有 1-5 个事件。存储这些事件的主要原因是,一旦我们创建了可能对这些事件感兴趣的未来服务,就能够重播它们(可能使用表扫描)。由于我们在 Google Cloud 中,我们显然将 Google 的服务视为首选。
我怀疑Bigtable 很适合这个,但根据price calculator,我们每月要花费超过 1400 美元(这对我们来说是一笔大交易) :
查看BigQuery 之类的内容会显示每月 3 美元的价格(如果我没有错过重要的东西的话):
即使无模式数据库更适合我们,我们也可以将事件本质上存储为带有一些元数据的 blob。
问题
我们是否可以为此使用 BigQuery 而不是 Bigtable 来降低成本?例如,BigQuery 有一个名为 streaming inserts 的东西,在我看来,我们可以使用它。如果沿着这条路线走下去,我可能不知道有什么会在短期或长期影响我们的事情吗?
【问题讨论】:
-
你没有错过必需品,BQ 非常“便宜”。
-
BigQuery 针对长期存储和分析进行了优化,BigTable 针对在线应用的大量使用进行了优化
-
不确定,但在操作方面可能会受到限制。例如,认为您每天只能将 1k 附加到一张表中(这是我不久前达到的一个 BQ api 限制)。虽然我认为流式 API 更宽容。只是可能是另一个需要考虑的维度。
标签: google-app-engine google-bigquery bigtable google-cloud-bigtable