開源|構建空氣品質資料庫

2021-03-01 氣象雜貨鋪

數據是數據科學中必不可少的一環。如果沒有數據,那麼數據科學中所有的算法都將是一紙空談,毫無利用價值。

機器學習和深度學習的訓練也依賴於數據的輸入。最近兩年機器學習和深度學習在氣象領域的應用也逐漸火熱起來,而且不少機構都在舉辦機器學習和深度學習在氣象應用的比賽。

近些年來人們也越加關注大氣汙染的情況,尤其是空氣品質,關乎到人們生活的各個方面。考慮到目前國內沒有多少關於空氣品質數據共享的平臺。除了環保部總站提供的實時數據之外,也有一些網站提供了國控站的實時數據以及歷史數據,但是這些數據站提供的數據僅是空氣品質的數據,而且除了總站平臺之外,其餘的實時數據分享平臺(比如pm25.in)提供的數據有時會因為某些原因導致數據中斷。因此出於項目需要,調查了不少提供空氣品質數據的網站,然後找到 aqicn.org 網站可以獲取空氣品質數據,此外還提供了一些氣象數據(比如溫度,氣壓,溼度和風速)。但是由於此網站不提供歷史數據接口,因此只能通過其提供的實時數據API獲取數據。

多源資料庫的構建具有不可忽視的意義。尤其是對於利用機器學習和深度學習來預測空氣品質的項目來說,僅僅需要空氣品質數據是遠遠不夠的,因為空氣品質的變化依賴於很多因素:比如氣象條件,大氣的環流背景會對汙染物的傳輸具有非常重要的影響,而且汙染源的排放對於汙染物的變化也具有非常重要的影響。

微軟亞洲研究院曾利用大數據對空氣品質進行了預測:

要預測一個地方的空氣品質,並不是指單純地只看這個地方本地的數據,而且要考慮到周邊地區的空氣及其他因素,比如空氣品質站點數據、交通流數據、氣象數據、廠礦數據、人口流動數據、路網結構等。 

與傳統模擬空氣品質不同,大數據預測空氣品質依靠的是基於多源數據融合的機器學習方法,也就是說,空氣品質的預測不僅僅看空氣品質數據,還要看與之相關的氣象數據、交通流量數據、廠礦數據、城市路網結構等不同領域的數據,不同領域的數據互相疊加,相互補強,從而預測空氣品質狀況。

其中利用的不僅僅是空氣品質數據,而且還有氣象數據以及其它的一些數據。所用到的廠礦數據和人口數據類似數值模式中所使用的人為排放源。

本文不對這些細節進行過多探討,關於這些內容的討論將放到後面。上述的討論只是想說明構建多數據源資料庫的重要性。

本來此項目是想作為第一個正式項目來維護的,但是由於一些原因,比如國控站太多,又由於python的GIL鎖限制導致下載數據的時候會需要不少資源(測試了12個核,可以在30分鐘左右獲取到所有國控站數據,這不僅取決於伺服器可分配資源,而且還受到網絡響應的影響),導致無法繼續單獨維護此項目運行。

目前程序已經持續運行一個月左右,由於我能使用的資源有限,目前僅持續獲取了大概600個站點一個月左右的數據。

簡單的對此項目進行一下介紹:

waqip項目是為了從aqicn.org網站下載中國各國控站的空氣品質數據以及氣象數據,並且存儲到資料庫。

其中包括了四個主要腳本:

aqi.py : 可以根據pm2.5, pm10, co, no2, so2, o3的值計算IAQI和AQI,也可以根據各個要素的分指數計算各要素的值。

waqip.py : 下載空氣品質數據(包括各要素的分指數以及AQI)以及氣象數據(包括溫度,氣壓,溼度和風速等數據)。

get_cities_china.py : 獲取中國所有國控站的連結。

get_waqip_all.py : 下載數據並存儲到資料庫。採用多進程下載,腳本中測試時使用了12個核。

(注意:為了能夠成功下載數據,必須要從aqicn.org網站申請token。)

waqip.sh 腳本可用於設置 crontab 定時任務,而 cities_china_url.csv 文件中包含了中國所有國控站的信息。

程序已經上傳到Github,連結見文末。無論你是對這個項目本身感興趣,還是想學習python,都可以關注一下。

https://github.com/bugsuse/waqip

相關焦點

  • MySQL與PostgreSQL:該選擇哪個開源資料庫?
    近日,Naresh撰寫了一篇博文,對開源世界最常見的兩種資料庫MySQL與PostgreSQL的特點進行了詳盡的分析和比對。如果打算為項目選擇一款免費、開源的資料庫,那麼你可能會在MySQL與PostgreSQL之間猶豫不定。MySQL與PostgreSQL都是 免費、開源、強大、且功能豐富的資料庫。
  • 專訪王穎澤:國產資料庫開源之路如何可控?
    「可控」成為公眾對中國造的希望,開源面臨的授權問題成為一顆懸在國產廠商頭頂的達摩克利斯之劍。在資料庫領域,不少國產廠商都有自己的想法和理解。其中,天曦科技很早之前就曾提出希望開創一條基於開源可控的國產資料庫之路。在如今這個時代背景下,我們應該如何正確理解開源可控的含義?這條路應該如何走?終點又是什麼呢?與國際一線大廠相比,國產資料庫廠商的生存現狀如何?面臨的痛點有哪些呢?
  • 一篇文章,掌握所有開源資料庫的現狀
    近幾年的開源社區,新的思想和方案層出不窮,我將總結一下近幾年一些主流的開源資料庫方案,及其背後的設計思想以及適用場景。本人才疏學淺如有遺漏或者錯誤請見諒。本次分享聚焦於資料庫即結構化數據存儲 OLTP 及 NoSQL 領域,不會涉及 OLAP、對象存儲以及分布式文件系統。
  • 蟑螂資料庫?Google前工程師企圖開源實現Spanner精簡版
    沒有空氣情況下可以存活45分鐘,沒有食物時甚至可以存活超過一個月。砍下頭顱都不能殺死它們,至少不是立刻死亡,它們在沒有頭的情況下還能存活好幾天。在Google、亞馬遜以及Facebook等科技巨人裡面,工程師們先進的技術同樣是在幫助它們網站不那麼容易被停掉。他們必須做到,在一個/多個伺服器,甚至整個數據中心丟失的情況下,站點仍然能繼續運轉。
  • 資料庫周刊31丨華為高斯開源;國產資料庫排行;浙江移動AntDB……
    熱門資訊1、openGauss 正式開源,華為公開發布原始碼【摘要】6月1日,華為正式宣布開源資料庫能力,開放openGauss資料庫原始碼,並成立openGauss開源社區,社區官網(http://opengauss.org)同步上線。
  • 而在開源軟體的使用中,資料庫是香餑餑
    根據中國信息通信研究院(以下簡稱信通院)發布的《開源生態白皮書(2020年)》,2019年我國企業已經使用開源技術的企業佔比為87.4%,同比增長10.7%,我國企業使用開源技術已成主流。 而在開源軟體的使用中,資料庫是香餑餑。 根據信通院的數據,我國超半數企業使用開源軟體應用於資料庫方向。
  • CockroachDB 修改開源協議,限制商業構建 DBaaS
    開源雲原生 SQL 資料庫 CockroachDB 宣布修改開源協議,加入限制商業使用的條款。
  • 推出企業版開源資料庫,Cockroach Labs 完成 2700 萬美元新融資
    Cockroach Labs是一家開源基礎設施解決方案提供商,由前Google軟體工程師Spencer Kimball、Peter Mattis以及Ben Darnell成立於2015年,現有員工30人,總部位於美國紐約。
  • 白碩:區塊鏈+開源資料庫≥商業資料庫
    雷鋒網AI金融評論了解到,白碩認為,中國沒有成熟可用的商業資料庫,一直是一大痛點,而實際上,可能有個很好的思路實現去IOE,「區塊鏈+開源資料庫,這兩個結合可以大於等於商業資料庫……區塊鏈來做日誌,做存儲過程,做高可用支持,開源資料庫做查詢、做數據困難,做高性能的支持,把這兩個耦合起來,相當於商業資料庫的能力,但是花的錢很少,成本很低。」
  • 蘋果重新開源分布式資料庫FoundationDB,已在內部使用三年
    但這在當時引發了開源社區的不滿,開源生態的開發者和參與者紛紛對商業收購開源項目的行為表示擔憂和不安,認為這樣對於開源項目的貢獻者和參與者來說加大了風險,甚至對開源項目本身也是一種傷害甚至扼殺。就在今天凌晨,蘋果宣布 FoundationDB 分布式資料庫重新開源!
  • 【開源推薦】PredictionIO:構建預測功能的機器學習伺服器
    序,並且還可以做一些預測功能,比如個性化推薦、發現內容等。好比開發者可以使用資料庫伺服器過濾信息。PredictionIO把源碼託管在Github上,遵循Apache License v2.0開源許可,目前最新版本為PredictionIO 0.6.3。使用PredictionIO可以構建許多App: 基於已有數據預測用戶行為; 選擇你自己的機器學習算法; 無需擔心可擴展性。
  • 語音技術開發者利器,希爾貝殼開源了1000小時中文語音資料庫
    一個十分值得關注的好消息是,在這次會議上,AISHELL Foundation和北京希爾貝殼科技有限公司宣布開源數據規模達1000小時的目前全球最大中文開源資料庫AISHELL-2,並配套研發了更優秀的系統級recipe,AISHELL-2還配備了一套evaluation數據集,TEST&DEV數據包含了iOS、Android、高保真Mic三種設備,能使實驗測試更科學和多樣性。
  • 谷歌又來開源了,這次是資料庫備份檢查工具
    谷歌又發布了一個新的開源工具,據說是用於驗證PostgreSQL(Postgres)資料庫備份。之前,該工具只提供給Google Cloud SQL for Postgres的客戶使用,但從本周開始,它也可以作為開原始碼使用了。  Google雲計算部門的產品經理Brett Hesterberg和高級軟體工程師Alexis Guajardo是這樣描述這項新功能的:管理員可以針對Postgres資料庫執行的命令行工具。
  • LinkedIn 開源多媒體對象存儲資料庫 Ambry
    LinkedIn近日開源了多媒體對象存儲資料庫雖然Facebook和Google等公司經常開源一些軟體工具,但是對象資料庫在開源世界依然屬於一個小眾產品。
  • AWS開源圖譜資料庫Netptune查詢工具Graph Notebook
    AWS上周宣布將原用於圖譜資料庫Amazon Neptune的Jupyter Notebook工具,以Apache 2.0授權開源出來,供企業在PC機或在AWS環境下,使用這個圖譜資料庫的查詢及可視化工具。
  • 華為:伺服器作業系統EulerOS和資料庫GaussDB宣布開源
    藍鯨TMT頻道9月19日訊,今日,華為在第四屆華為全聯接大會期間宣布,華為伺服器作業系統EulerOS和資料庫作業系統Gauss開源。華為Cloud&AI產品與服務總裁侯金龍還透露,華為正在與中標紅旗、武漢深之度等公司籌備開源社區,並將在12月31號之前上線。
  • Hibari開源NoSQL資料庫引擎
    Hibari (在日語中意思為「雲雀」)是一個專為高可靠性和大數據存儲的資料庫引擎Hibari 並不是一個關係資料庫,主要是通過 key-value 的方法進行數據存儲。Hibari 是具有強大一致性保證的分布式有序鍵值存儲。
  • CCF南京預告:鐘山論壇——開源國產資料庫與產學研聯盟創新
    會議由CCF南京、CUUG、國產資料庫和開源社區聯盟以及各行業資料庫專家共同策劃組織,聯合百家名企與百家高校,為高校應用型人才培養提供指導方向,聯合企業走進高校,成立《開源資料庫工作室》,免費授課,培養資料庫人才,讓學生能夠高端、高薪、高起點就業。
  • 瞄準微軟客戶,AWS將開源資料庫翻譯工具
    圖片來源: AWS在re: Invent大會上,Amazon Web Services(AWS)宣布將開源Aurora PostgreSQL資料庫的結構化資料庫翻譯工具Babelfish for Aurora PostgreSQL,以吸引微軟用戶將應用程式及數據從
  • Ravel計劃開源圖形資料庫
    Ravel,美國數據分析公司,希望提供一個受支持的Google Pregel 軟體的開源版本,叫做GoldenOrb,來處理高伸縮性圖形分析。