google.datalab.bigquery和google.cloud.bigquery之间的区别

时间:2018-06-24 11:04:10

标签: google-cloud-platform google-bigquery google-cloud-datalab

我在Google Cloud Platform上使用Datalab,并尝试使用google创建BigQuery数据集。 datalab .bigquery当我发现我需要仅在Google中使用的.Client方法时。 .bigquery库。

bigquery库的数据实验室版本和云版本之间有什么区别?

数据实验室是云库的精简版,还是有不同的预期用途?

2 个答案:

答案 0 :(得分:2)

免责声明:这不是对预期用途的概述,也不是重大差异,而是对这些软件包之间的表面差异的概述。

一个(不令人满意的答案)可能是根据安装推断出使用情况。

Row project                 num_downloads    
1   google-cloud-bigquery   619666   
2   datalab                 5313

我使用bigquery查询(如所述的here)推断出这一点:

#standardSQL
SELECT
  file.project,
  COUNT(*) AS num_downloads
FROM
  `the-psf.pypi.downloads*`
WHERE
  file.project IN ('google-cloud-bigquery','datalab')
  -- Only query the last 60 days of history
  AND _TABLE_SUFFIX BETWEEN FORMAT_DATE(
      '%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 60 DAY))
      AND FORMAT_DATE('%Y%m%d', CURRENT_DATE())
GROUP BY
  file.project
ORDER BY
  num_downloads DESC

因此,您可以看到,云大查询“更受欢迎”(由于它是通过google-cloud-python自动安装的?)。

如果您想进一步了解细节,请查看代码(github: google.cloud.bigquerygithub: google.datalab.bigquery),您会发现软件包的代码有很多差异。

对github上的“见解”页面的进一步调查(cloudpydatalab)向我们展示了更多差异:

cloud.bigquery存在的时间更长(自2014年1月起与2016年5月相比,假设自从回购存在以来就存在)。 Pydatalab get由除cloud.bigquery包之外的其他贡献者开发。最后,cloud.bigquery还有更多活动(可能还包括其他软件包)。

因此,即使这可能不是您想要或期望的答案,但从代码和文档的第一眼看(比较cloudpydatalab),我可以说似乎即使pydatalab(似乎确实没有那么发达),它也更加舒适。答案是,它们似乎是出于不同的目的。

答案 1 :(得分:1)

Google.cloud.bigquery是BigQuery的Python客户端库。它紧密地模仿BigQuery rest API,并且类似于Java,Go,c ++和其他语言的客户端库。本质上,它是使用bq服务可以完成的事情的Python包装器。

Google.datalab.bigquery是一个Python库,供数据科学家在笔记本中使用。例如,它具有一种获取BigQuery结果集并将其转换为熊猫数据框的方法。此外,mltoolbox还可以简化机器学习模型的训练和评估。没有等效的Java或Go。它使用客户端库与BigQuery进行实际对话。