BigQuery ELT(BQ-> BQ)-最佳做法

时间:2019-12-24 14:13:13

标签: apache-spark google-bigquery etl google-cloud-dataproc

我知道这个问题每隔几个月就会再次提出,但是很难找到和比较GCP技术。

当前,我们执行数据提取并将数据加载到BQ,我们正在寻找一种在云中转换数据的方法(ELT过程的最后一步)。

最明显的方法是在计划的作业中运行查询(无论如何执行INSERT INTO查询),这应该是最快的方法,也是我认为最便宜的方法,但是主要缺点是它很难维护此类代码(查询组),它不是经过编译的代码,我们无法在代码中找到列/表的引用,无法使用断点进行调试,甚至无法定位错误。这就是寻找更好解决方案的原因。

DataprocDataflow似乎是正确的解决方案,根据google文档,它们既可以处理批处理,又可以通过代码维护,但是我认为我们更喜欢Dataproc,因为它会更具有成本效益(满足我们的需求)(与BEAM相比,Spark并没有任何优势,但是如果您认为我错了,请告诉我为什么!请记住,我们不需要流媒体选项)。

我发现此有用的文档:Migrating data warehouses to BigQuery: Reporting and analysis 在对Dataproc进行了一些研究之后,我发现,为了从BQ读取和写入BQ,我们应该使用Apache Spark SQL connector for Google BigQuery,并且我们将有一个简单的API用于数据操作(例如过滤,分区等) )。

还有其他我想念的东西吗?您能建议其他可以做到的技术/谷歌产品吗?

DataFusion尚未成熟,我们对其进行了一些处理,并且有很多错误。

我知道这个问题有点模糊,但是似乎互联网上几乎没有关于执行ELT的最佳实践的文章(它总是ETL和Airflow ..),我只是在寻找一种方法来转换表格/ BQ,而无需编写数百个查询。

0 个答案:

没有答案