您如何在OpenAQ平台上访问90天以上的空气质量数据? 一种方法是使用Amazon Athena。

这篇文章是由OpenAQ社区参与官Heidi Yoon撰写的,它基于 我们联合创始人Joe Flasher和 GitHub Athena 用户指南 的GitHub 要旨

如果您想访问最近三个月的空气质量数据,则可以使用我们的API和可通过我们的网站获得的其他工具从OpenAQ平台访问这些数据!

如果您想访问超过90天的空气质量数据,则可以访问S3存储桶中的所有数据,这些存储桶是由Amazon Web Services(AWS)管理的云数据存储。

作为历史记录,这是在2017年末发生的更改(请参阅此处的博客文章!)。 至此,OpenAQ平台开始在S3存储桶和API访问的数据库中并行容纳超过1亿个数据点。 一旦我们管理了超过1亿个数据点,API的性能就会变慢,维护数据库的财务成本也会增加。 因此,我们决定将大部分数据继续存储在S3存储桶中,而API只能提供最近90天的数据。

任何人都可以访问我们的S3存储桶。

  • 您可以在以下位置访问添加到系统中的数据:https://openaq-fetches.s3.amazonaws.com/index.html。

要以与以前使用OpenAQ API相似的方式查询S3存储桶,您将需要一个分布式查询工具,例如Amazon Athena,Apache Spark或Google BigQuery。

在此博客文章中,我将详细描述如何使用Amazon Athena查询我们的数据并保存您的结果。

顺便说一句,我们还在努力寻找其他方法来使历史数据更易于访问。 如果您有想法,请与我们联系! (通过info @ openaq.org,GitHub或Slack。)

Amazon Athena是一项查询服务,可用于分析S3存储桶中的数据。 要使用Athena,您将需要一个AWS账户。 基本的AWS账户是免费的,但是您需要为运行的Athena查询付费。 查询的成本取决于数据集的大小,对于我们当前的OpenAQ数据集,每个查询的成本约为0.01美元。

使用AWS管理控制台

在这里,我将描述如何使用AWS管理控制台访问Athena,但是如果您非常精明,则可以使用其他方法来探索如何访问Athena,例如使用CLI,JDBC及其API(用户指南)。 )。 拥有AWS账户后,您可以轻松地在右上角的任何AWS网页上登录控制台。 登录后,可以通过在给定框中键入Athena或在Analytics(分析)下选择Athena来访问Athena。

如果这是您第一次打开Athena,则将转到“入门”页面。 选择开始 。 本教程将自动启动。 随意学习或关闭本教程。 如果愿意,您随时可以在以后运行该教程,方法是单击右上角的“ 教程 ”。

选择访问区域

在我们使用Athena进行任何操作之前,请检查您的访问区域,然后在控制台的右上角将您的区域名称更改为US East(N. Virginia)无论您身在何处,都可以做到这一点! 通过选择区域,您可以选择雅典娜在哪里运行其查询。 通过在美国东部(弗吉尼亚北部运行查询,您的查询将更快地完成,并为OpenAQ节省数据传输费用。

为OpenAQ数据集创建表

第一步是为OpenAQ数据集创建一个表。 该表告诉Athena OpenAQ数据在S3中的位置,并指定数据集的数据结构(即列名,数据类型等)。您可以自己编写表,也可以在openaq.ddl中使用表定义文件,在乔的要旨底部给出。 将整个表定义复制并粘贴到“查询”窗口中以进行新查询,然后单击“ 运行查询” 。 如果表加载成功,您将在下面的“结果”窗口中看到“ 查询成功 ”消息。 现在,您应该在“表”下的左侧面板上看到OpenAQ 。 要查看OpenAQ表的示例行,可以通过单击左侧面板中表名称旁边的垂直三个点来选择“ 预览数据”

使用Athena运行查询

Athena中的查询使用标准SQL编写。 使用“ 新建查询”窗口,您可以运行所需的任何查询! 查询完成后,结果将填充在下面的窗口中。

这是一些示例查询。

-我们可以使用以下查询来查询特定位置(或城市或国家/地区)的所有数据,例如巴林首都麦纳麦。

-或者,我们可以进行更具体的查询。 假设,我们只需要波斯尼亚和黑塞哥维那萨拉热窝名为Otoka的站的日期和PM10值。 然后,查询将如下。

Joe在他的GitHub要点中有更多示例查询示例! 通过使用Athena或任何其他分布式查询工具,您应该能够轻松地从OpenAQ平台访问所需的任何和所有空气质量数据。

保存查询和结果

运行成功的查询后,立即将结果保存为CSV文件很容易。 例如,我们可以从上方查看“麦纳麦”查询的“结果”窗口的屏幕截图。

通过单击“结果”窗口右上角的保存图标,您可以轻松地将数据导出为CSV文件。 如果您不立即保存结果,也可以稍后通过访问“ 历史记录”选项卡将其导出为CSV文件。

Athena会自动保留查询及其结果45天,您可以使用“ 历史记录”选项卡或分配给您的AWS账户的未保存S3存储桶中查看所有最近的查询。

我们希望这有助于揭示Amazon Athena的某些奥秘,并希望您可以访问所有OpenAQ数据以进行空气不平等工作! 如上所述,我们正在努力寻找其他方法来使历史数据更易于访问。 如果您有想法请告诉我们! (通过info @ openaq.org,GitHub或Slack。)