此外,直接在BigQuery中进行转换/联接有什么问题吗?我想最大程度地减少我要建立的数据仓库所涉及的组件和步骤的数量(一连串零售商店的简单交易和库存数据。)
答案 0 :(得分:2)
好吧,如果您通过GCS进行操作,则意味着您没有在流式传输数据,而且从文件到BQ的加载是免费的,并且文件的大小最多可以达到5TB。有时这是一种优势,它具有大文件功能并且免费。流式传输也是实时的,通过GCS意味着它不是实时的。
如果您想直接将数据流式传输到具有成本的BQ表中。目前,流媒体的价格为每200 MB 0.01美元(2018年6月),因此1TB约为50美元。
另一方面,如果可以表达任务,则可以使用SQL进行转换。否则,您有很多选择,大多数时候人们会给我们提供数据流来改变事物。有关高级示例,请参见链接的教程。
也请注意
Cloud Dataprep - Data Preparation and Data Cleansing和
Google Data Studio: Easily Build Custom Reports and Dashboards
还有一个高级示例:
答案 1 :(得分:1)
通过Cloud Storage加载数据是最快(也是最便宜)的方式。 可以通过应用直接加载(使用流式插入,这会增加一些额外的费用)
对于进行转换-如果您计划/需要做的事情可以在BigQuery中完成-您应该在BigQuery中完成:)-这是进行ETL的最好,最快的方法。 但是您应该考虑运行查询的成本(如果您不向Google支付插槽费用,则可能是每1TB扫描5美元)
使用复杂的ETL的另一个不错的选择是使用数据流,但是它很快变得昂贵,以换取更多的灵活性。