本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
了解 Amazon Location Service 中的位置搜尋
Amazon Location Service 的關鍵函數是搜尋地理位置資訊的能力。Amazon Location 透過放置索引資源提供此功能。
注意
如需有關如何使用放置索引資源在實務中搜尋的資訊,請參閱 使用 Amazon Location 搜尋位置和地理位置資料。
您可以使用 位置索引APIs來搜尋:
-
興趣點,例如餐廳和地標。依名稱和要搜尋的選用位置搜尋,並接收依關聯排序的選項清單。
-
街道地址,接收該地址的緯度和經度。這稱為地理編碼 。
-
緯度和經度位置,接收相關街道地址或有關該位置的其他資訊。這稱為反向地理編碼 。
-
部分或拼寫錯誤的自訂格式文字查詢,通常是使用者類型。這稱為自動完成 、自動建議或模糊比對。
位置索引包含要用於搜尋的資料提供者。
注意
映射資料和其他地理位置資訊,包括確切位置,可能因資料提供者而異。最佳實務是,針對您的位置索引、地圖和其他 Amazon Location 資源使用相同的資料提供者。例如,如果您的位置索引傳回的位置與地圖資源所提供相同位置的位置不相符,您可以在地圖上顯示錯誤的位置中放置標記。
以下說明如何建立和使用位置索引資源:
-
首先,您可以選取資料提供者,在 AWS 帳戶中建立位置索引資源。
-
然後,您可以選取並安裝SDK符合您開發環境和應用程式的 。如需可用選項的詳細資訊,請參閱存取 Amazon Location 的相關主題。
-
開始使用 Amazon Location Places APIs 。如需詳細資訊,請參閱使用 Places search 的主題。
-
然後,您可以使用 Amazon CloudWatch 和 等服務整合監控 AWS CloudTrail。如需詳細資訊,請參閱 使用 Amazon 監控 Amazon Location Service CloudWatch 及 使用 記錄和監控 AWS CloudTrail。
地理編碼概念
Amazon Location Place 索引提供名為 的動作SearchPlaceIndexForText
,可讓您指定要搜尋的文字。例如,您可以搜尋:
-
位置 – 搜尋
Paris
可能會傳回法國城市的位置。 -
企業 – 搜尋
coffee shop
可能會傳回咖啡店清單,包括其名稱和位置。您也可以指定要搜尋的位置或要在其中搜尋的週框方塊,讓結果更相關。在此情況下,提供位於華盛頓州西雅圖市中心的地點,會傳回該區域的咖啡店。 -
地址 – 搜尋
1600 Pennsylvania Ave, Washington D.C.
可能會傳回美國 White House 的位置 (位於該地址)。
以此方式搜尋文字通常稱為地理編碼 ,這涉及尋找地址或位置的地理位置。
Amazon Location Service 也提供名為 的反向地理編碼動作SearchPlaceIndexForPosition
。這需要地理位置,並傳回地址、業務或有關該位置的其他資訊。
搜尋結果
當您在 Amazon Location Service 中成功執行搜尋請求時,會傳回一或多個結果。每個結果都包含一個標籤,即結果的名稱或描述。例如,搜尋 coffee shop
可能會傳回帶有標籤 的結果Hometown Cafe
,告訴您找到名為 "Hometown Cafe" 的咖啡店。搜尋結果通常也會包含結構化地址 (包含地址號碼、單位、街道和郵遞區號等屬性)。視資料提供者而定,它也會包含其他中繼資料,例如國家/地區和時區。
對於商業名稱或類別 (例如 coffee shop
) 的搜尋,您可能想要在地圖上顯示所有傳回的結果。對於地址搜尋,您可能只想要自動使用第一個結果。如需關聯性的相關資訊,請參閱下一個主題。
多個結果和關聯性
依文字搜尋時,Amazon Location Service 通常會找到多個結果。例如,搜尋 Paris
可能會傳回法國的城市,也可能傳回德州的城市。結果會依關聯性排序,由資料提供者決定。
注意
所有提供者都會以關聯性順序傳回結果。如果您選擇 Esri 或 Grab 作為資料提供者,結果會包含關聯值,可用來了解單一請求結果之間的相對關聯性。
指定其他資訊,例如國家/地區名稱或要搜尋的位置,可以變更結果的順序、減少結果的數量,甚至變更傳回的結果集。例如,搜尋 時,在德州Paris
尋找要搜尋的位置,比起 ,更有可能傳回Paris, Texas
作為第一個結果Paris, France
。
在互動式應用程式中,您可以使用關聯性來協助決定是否接受最佳結果,或要求使用者在多個傳回的結果之間取消歧義。如果第一個結果具有高度關聯性,您可能只接受它作為正確答案。如果存在多個高關聯性的結果,或沒有高關聯性的結果,您可能想要列出結果,並讓使用者選取最佳結果。
地址結果
您可以使用相同的SearchPlaceIndexForText
動作,使用 Amazon Location Service 搜尋地址。您提供的資訊越多,傳回的地址越可能符合指定的地址。例如, 較123 Main St
不可能找到正確的結果123 Main St, Anytown, California, 90210
。
地址具有多個屬性,例如街道號碼、街道、城市、區域和郵遞區號等。這些屬性用於在位置索引中尋找地址,以盡可能符合多個方面。找到的屬性越多,會考慮的相符項目越相關,而且傳回的可能性也越大。
注意
地址結果的關聯性取決於結果與輸入相符的程度。這可能是相符的屬性數目,但結果與輸入相符的程度也相同。例如,在資料中Main St
發現 時, 的輸入相關性123 Main St
會高於 ,而 Maine St
是唯一的結果。 Maine St
仍會傳回,但相關性值可能較低。
搜尋結果包含完整地址 (123 Main St, Anytown, California, 90210
) 的標籤,但也包含傳回地址的個別結構化屬性。這很有幫助,因為您可以用它來填入資料庫中的地址欄位,或檢查結果並尋找找到位置的城市、區域或郵遞區號。
插補
位置索引資料中的地址包含確切的地址相符項目。例如,假設有一個街道,9th street
一個區塊有 2 個房屋220
和 240
,如下圖所示。
資料提供者會使用這兩個已知地址建立地理位置資料。您可以搜尋這兩個地址,找到這兩個地址。資料提供者建立映射資料後,假設在前兩個地址之間新增了新家。此新房屋獲得地址 230
。如果您搜尋 230 S 9th St
,資料提供者仍會找到結果。它會在已知地址之間插入,而不是使用已知地址,並從這些地址中估計新地址的位置。在這種情況下,它可能會假設 230 位於 220 到 240 之間的一半 (且位於街道的同一側),並據此傳回近似位置。
注意
資料提供者會定期使用新地址更新其地理位置資料。在此情況下, 230 S 9th St
會新增至資料提供者資料,但通常會有一段期間建立新地址,但尚未新增至資料。
在此情況下,資料提供者無法判斷新的地址是否存在於世界中,因為它尚未存在於資料中,但會從其擁有的資訊提供最佳答案。此結果稱為插補 ,可由資料提供者在結果中傳回。如果 interpolated
傳回 false
,則為已知地址。如果傳回 true
,則它是近似地址。如果未傳回,則資料提供者不會提供有關結果是否來自內插的資訊。
重要
資料提供者也可能針對完全不存在的地址傳回插補結果。例如,在此情況下,如果您輸入 232 S 9th St
,提供者會找到此不存在的地址,並傳回接近 230 但位於 240 邊的位置。插補地址有助於將您引導到正確的位置,但最好記住,這些地址不是已知的地址。
儲存地理編碼結果
建立位置索引資源時,您必須指定資料儲存選項 (在 IntendedUse
中稱為 API)。這可以設定為單次使用或儲存的結果。這是詢問您對結果的預期用途。如果您要儲存結果 (即使是用於快取目的),您必須選擇儲存選項,而非單次使用選項。
注意
當您選擇儲存的選項 (標記為是、結果將儲存在主控台中,或選擇CreatePlaceIndex
在 storage
中API) 時,Amazon Location Service 不會為您儲存結果。這表示您打算儲存結果。
在查看您將如何使用 Amazon Location Service 的查詢結果時,您應該隨時了解適用的AWS 服務條款
放置術語
- 放置索引資源
-
可讓您選擇資料來源以支援搜尋查詢。例如,您可以搜尋興趣點、地址或座標。將搜尋查詢傳送至位置索引資源時,會使用資源的已設定資料來源來完成。
- 地理編碼
-
地理編碼是取得文字輸入、在位置索引中搜尋文字輸入,以及使用位置傳回結果的程序。
- 反向地理編碼
-
反向地理編碼是從位置索引內取得位置並傳回該位置相關資訊的程序,例如該位置的地址、城市或業務。
- 相關性
-
Relevance 是結果與輸入相符的程度。這不是正確性指標。
- 插補
-
插補是使用已知地址作為指引點來尋找未知地址的程序。
- ISO 3166 國家/地區代碼
-
Amazon Location Service Places 使用國際標準化組織 (ISO) 3166
國家/地區代碼來參考國家或地區。 若要尋找特定國家或地區的程式碼,請使用ISO線上瀏覽平台
。