我们刚刚开始在BigQuery中使用Google数据,以前只在工作环境中使用MSSQL。我们希望将一些分析转移到GCP和BigQuery,但无法决定使用什么更好的选项-标准的还是遗留的SQL?
在这两种情况下,我们都必须适应新的语言版本,但真正的问题是,在谷歌分析数据分析方面,最好的选择是什么?从技术的角度来看,有什么东西应该让我们选择传统而不是标准,还是相反?这是非常误导我们,有两个版本,因为遗产似乎是现在更多的发展,但也许标准将成为SQL的主要版本在未来的提案?
发布于 2017-03-30 13:07:41
BigQuery标准SQL是可行的方法。它比Legacy SQL有更多的特性。
注意:这不是二进制选择。您总是可以使用Legacy SQL --如果有什么东西更容易用它来表达的话。从我的经验来看,它基本上是相反的--除了极少数例外。最突出的(例如,我是)- 表式解码器 - Support for table decorators in standard SQL is planned but not yet implemented.
我建议查看从遗留SQL迁移 --不是从迁移的角度,因为您是BigQuery的新手--因为它是在一个地方查看和比较两种方言的特性的好地方。
另外,我建议您检查一下BigQuery问题跟踪器,这样您就可以获得一些额外的洞察力。
发布于 2017-03-30 08:30:01
标准SQL是在BigQuery中使用的首选SQL方言,如在迁移指南中说明。虽然遗留SQL已经存在了相当长的一段时间--而且在撰写本文时仍然是默认的--但在它上并没有积极的开发工作。如果您正在评估要使用哪种语言,则应该选择标准SQL,因为除了与cases (Server的方言)更相似外,它更有表现力,更少令人惊讶的边缘情况,而且通常具有更多的特性。
发布于 2017-03-30 09:12:29
使用Standard,因为这是在长期路线图上。
从经验来看,有些查询在Legacy SQL下更快,但随着标准SQL是正在积极开发的查询,这种情况正在发生变化。
https://stackoverflow.com/questions/43111983
复制相似问题