空間數據有何特別之處?打車點外賣都離不開它

全文共2030字,預計學習時長6分鐘


圖源:unsplash

Lyft是如何計算司機和用戶的距離的?DoorDash是如何為剛點的食物給出準確的估值?正是由于空間數據的存在,這兩種應用才可以為用戶提供良好的體驗感,本文將介紹空間數據的基礎知識,展示一些使用空間數據的常見應用程式和用例的示例。

空間數據是什么?

空間數據,通常稱為地理空間數據,是指任何包含特定位置資訊的數據。用通俗的話說,空間數據就是關于位置的數據。雖然可能沒有意識到,但其實你對空間數據已經非常熟悉了,因為每當打開地圖應用程式尋找最近的加油站或查看附近咖啡館的全景時,你都會與空間數據進行交互,

與位置相關的數據不計其數,但若將它們分解成兩種最常用的空間數據類型后,就更容易理解了,

空間數據類型

空間數據主要可以分為兩類,即幾何數據和地理數據。

· 地理數據是可以映射到球體的數據(這里討論的球體通常指地球),地理數據通常是指與地球上某個物體的位置相關的經度和緯度,比如GPS數據就是一個很典型的例子。

· 幾何數據是可以映射到二維平面的數據,比如,建筑物的平面圖就是一個很典型的例子。

上次在不熟悉的地方耗光了汽油時,你肯定使用了一個地圖應用程式來查找附近所有的加油站,這個應用程式包含幾何數據,用于捕獲與附近道路相關的所有數據。該應用程式可以通過應用駕駛速度模式數據、交通模式數據和幾何數據來計算到達加油站所需要的時間。

地圖應用程式是最簡單的空間數據示例,實際上還有成千上萬的其他例子。

物聯網應用和空間數據

物聯網(IoT)是指嵌入傳感器的物體網路(比如Bird scooter或CitiBike),從而將數據從“物體”發送到資料庫,物聯網工作負載通常使用空間數據。下面是一些例子:

· 物聯網平臺分析:空間數據顯示了用戶登入應用的位置,比如引用Bird的例子,就是登入滑板車的位置,

· 實時傳感器檢測:這是Fitbit上的空間數據,用于追蹤你一天的運動步數,

· 個性化視圖:谷歌地圖可以確定你的實時位置,也可以獲取你喜歡泰國菜和墨西哥菜的資訊,它可以根據你的實時位置和飲食喜好,為你提供塔可鐘(墨西哥快餐品牌)的廣告。

運輸/物流應用和空間數據

運輸和物流公司負責人員和產品的流動,包括航空公司、卡車運輸公司、鐵路公司、航運公司、物流公司,以及提供運輸基礎設施的公司。以下是該行業的一些空間數據工作負載示例:

· 運行研究:空間數據根據某一地點的地形特征以及溫度和交通等周圍條件,從而判斷特定地點最適合工作的機器類型,

· 供應鏈管理:空間數據可以估計人或產品從A點到B點的速度。

· 實時分析:空間數據可以告訴距離您最近的一批橄欖油的具體位置。

環境技術應用與空間數據

環境技術是利用電子設備監測自然環境的技術,它可以是測量潮汐模式、溫度模式或森林火災的狀況。最相關的空間數據工作負載需要利用環境技術來保護環境和人類,


圖源:unsplash

· 洪水風險分析:空間數據通過結合地理數據、天氣數據和歷史數據,跟蹤特別容易發生洪水的地區,

· 實時自然災害探測:空間數據可通過捕捉野火的當前位置,分析風速/風向以及路徑上的物體,從而預測野火蔓延的地點。

· 農業/灌溉管理:空間數據可記錄農場上已經完成種植、收割、修剪或灌溉的區域。

這些只是空間數據在實際案例中運用的例子,還有很多其他的空間數據用例,如:城市規劃、欺詐檢測、地理營銷、土木工程等等,

如何使用空間數據構建

如果要談論空間數據,PostGIS必不可少。PostGIS是PostgreSQL的空間資料庫擴展,它有超過300種不同的內置組件和功能,可以更容易地處理空間數據,PostGIS幫助推出了Instagram和FourSquare等應用程式,同時還被納入于其他無數應用程式的技術堆棧中。

直到最近,空間數據工作負載還不能可靠地構建在任何真正的分布式資料庫上。但現在情況不同了。云原生分布式SQL資料庫——CockroachDB,現在支持空間數據類型。

CockroachDB并沒有重新發明運作方式,而是使用相同的PostGIS兼容的SQL語法。因此,你可以在資料庫上構建利用空間數據的應用程式,該資料庫始終處于運行狀態,易于擴展,并且易于使用。

將空間數據工作負載部署到分布式資料庫(而不是單一資料庫)意味著讀寫不會通過單個節點路由,而且不必跨多個站點進行異步復制。當需要擴展到不同區域時,不必擔心手動擴展的責任,


2 条回复 A文章作者 M管理員
  1. 外賣很不衛生雖然我也經常吃

  2. 哈哈,這可真的離不開!!