我知道正在努力改进 Bigquery 上的 Join 功能,而不是在这里咆哮,但如果无法正确使用 Join,将很难将“Terabyte”数据集分析为“广告”。
好的,回到问题,我有两张表,一张是 600 Megs,另一张是 50Megs,我确实尝试进行连接,但我得到了一个关于必须留下更小的表的错误。我做了一些研究,发现Bigquery
如果两个表都大于 7MB,那么它们是否都很大?
因此,根据我在网上找到的一些建议,我确实选择了较小表的相关数据集并将其保存在一个新表中,新数据集是 12MB 和两列 600K 行。然后我再次尝试了我的查询,但我仍然收到同样的错误:
Query Failed : Error: Large table cdrs_test.geoIP_Left must appear as the leftmost table in a join query
geoIP_Left 是 12 Megs,另一个表是 600Megs..
这可以以某种方式解决还是我被淘汰了?如果是这样,有人知道我可以用来分析支持连接的大数据集的任何其他服务吗?
编辑:这是实际的查询;
SELECT COUNT(results.cc_card) AS count,
sum(results.sessiontime) AS time,
geoIP_Left.place AS place
FROM cdrs_test.cdrs_2010_5 AS results
JOIN cdrs_test.geoIP_Left AS geoIP_table
ON results.cc_card = geoIP_table.vcard
WHERE results.sessiontime > 0 AND results.countryName Contains 'India'
GROUP BY place;