本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
查詢地理空間資料
地理空間資料包含識別符來指定物體的地理位置。這類資料的例子包括天氣報告、地圖方向、含地理位置的推文、商店位置,以及飛機航線。地理空間資料在商業分析、報告和預測方面扮演重要角色。
地理空間識別符 (例如經緯度) 可讓您將任何郵寄地址轉換為一組地理座標。
什麼是地理空間查詢?
地理空間查詢是 Athena 支援的特殊SQL查詢類型。它們與非空間SQL查詢的不同之處在於以下幾個方面:
-
使用以下特殊化幾何資料類型:
point
、line
、multiline
、polygon
和multipolygon
。 -
表示幾何資料類型之間的關係,例如
distance
、equals
、crosses
、touches
、overlaps
、disjoint
等等。
您可以在 Athena 中使用地理空間查詢,執行這些和其他類似操作:
-
尋找兩點之間的距離。
-
檢查是否一個區域 (多邊形) 包含其他區域。
-
檢查一個線條是否與其他線條或多邊形交錯或碰觸。
例如,若要在 Athena 中從瑞尼爾山之地理座標的類型 double
值中取得 point
幾何資料類型,請如下列範例所示,使用 ST_Point (longitude, latitude)
地理空間函數。
ST_Point(-121.7602, 46.8527)
輸入資料格式和幾何資料類型
若要在 Athena 中使用地理空間函數,請以WKT格式輸入資料,或使用 Hive JSON SerDe。您也可以使用 Athena 中支援的幾何資料類型。
輸入資料格式
為處理地理空間查詢,Athena 支援以下資料格式的輸入資料:
-
WKT(眾所周知的文本)。在 AthenaWKT,表示為
varchar(x)
或string
數據類型。 -
JSON-編碼的地理空間數據。為了剖析含有地理空間資料的JSON檔案並為其建立表格,Athena 使用 Hive JSON SerDe
。如需 SerDe 在 Athena 使用此功能的詳細資訊,請參閱JSON SerDe 程式庫。
幾何資料類型
為處理地理空間查詢,Athena 支援以下特殊幾何資料類型:
-
point
-
line
-
polygon
-
multiline
-
multipolygon