1.4.2 城市數據管理挑戰
有許多類型的數據,如文本、圖像、交通和氣象數據等,都是由城市空間中不同的來源不斷生成的。為了更好地支持上層數據挖掘和服務,需要跨不同領域管理大規模和動態的數據集。云計算平臺,如Microsoft Azure和Amazon Web Services,被視為大規模和動態數據的理想基礎設施。由于大多數城市數據都與空間信息和時間屬性(稱為時空數據)相關,城市計算需要云計算技術來管理時空數據。然而,當前的云計算平臺并非專為時空數據設計。以下是在處理時空數據時面臨的主要挑戰。
1.4.2.1 唯一的數據結構
時空數據具有唯一的數據結構,這些結構與文本和圖像不同。例如,一張照片在拍攝后的大小是固定的,而一輛出租車在城市中行駛的軌跡長度會不斷增加。一個移動物體的軌跡數據會以不可更改的順序持續流入云端,我們無法預知軌跡何時結束以及它最終會多大。此外,為了支持不同的查詢,時空數據的存儲機制也不同。
1.4.2.2 不同的查詢方式
我們通常通過關鍵詞查詢文檔,即精確或近似匹配一些關鍵詞與文檔集合。然而,在城市計算中,我們通常需要處理對時空數據的時空范圍查詢或k最近鄰查詢。例如,在60s的時間范圍內找到附近的空出租車是一個針對出租車軌跡數據的時空范圍查詢[65]。同樣,在駕駛過程中搜索最近的加油站是一個連續的1最近鄰查詢,針對的是POI。現有的云組件無法直接且高效地處理時空查詢,因為在大多數云存儲系統中沒有找到索引和檢索算法。
1.4.2.3 混合索引結構
傳統的索引和查詢算法通常是針對某一類型的數據提出的。例如,R樹是用于索引空間點數據的,倒排索引是為了處理文本文檔而設計的。然而,在城市計算中,我們需要處理具有不同格式和更新頻率的多數據集,這些數據集跨越不同的領域。這需要能夠組織多模態數據(例如,將軌跡、興趣點和空氣質量數據一起管理)的(混合)索引結構。如果沒有這樣的混合索引結構,上層機器學習模型的在線特征提取過程將需要很長時間,從而無法提供即時服務。目前,這樣的研究非常罕見。
1.4.2.4 將時空索引與云集成
在處理文本和圖像時,云計算平臺通常依賴分布式計算環境,如Spark、Storm和Hadoop,因為針對文本和圖像設計的索引結構功能相當有限。例如,倒排索引通常用于維護單詞和單詞所在文檔之間的關系。然而,對于時空數據,有效的索引結構可以將檢索算法的效率提高幾個量級。將時空索引的優勢與云中的分布式計算系統結合起來,可以使得云在處理更大規模的數據時更加高效,同時使用更少的計算資源。
將時空索引集成到云的并行計算環境中是一個艱巨的挑戰,特別是在有大量軌跡數據流入云時。例如,要找到在幾分鐘內穿越一系列道路段的車輛,就需要將軌跡索引結構系統地集成到基于Storm的計算框架中。因為使用了并行計算框架和索引結構,所以平衡內存和輸入/輸出(I/O)吞吐量是一個挑戰,這需要用到分布式系統、云存儲和索引算法的知識。一些索引結構在獨立運行的機器上可能表現很好,但考慮到索引分區和更新的潛在問題,它們可能不是分布式環境下的最佳選擇。
- SQL Server入門經典
- 企業大數據系統構建實戰:技術、架構、實施與應用
- 算法與數據中臺:基于Google、Facebook與微博實踐
- Power BI商業數據分析完全自學教程
- 數據中心數字孿生應用實踐
- PostgreSQL指南:內幕探索
- 淘寶、天貓電商數據分析與挖掘實戰(第2版)
- Hadoop大數據開發案例教程與項目實戰(在線實驗+在線自測)
- 數字IC設計入門(微課視頻版)
- 區域云計算和大數據產業發展:浙江樣板
- Hadoop 3實戰指南
- MySQL數據庫技術與應用
- 商業智能工具應用與數據可視化
- Spring Boot 2.0 Cookbook(Second Edition)
- 數據庫原理與設計實驗教程(MySQL版)