本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
地點搜尋
Amazon 定 Location Service 的一個關鍵功能是搜索地理位置信息的能力。Amazon 位置通過地點索引資源提供此功能。
注意
如需如何在實務中使用放置索引資源進行搜尋的相關資訊,請參閱使用 Amazon 位置搜尋地點和地理位置資料。
您可以使用地點索引 API 來搜索:
-
景點,例如餐廳和地標。按名稱和可選位置進行搜索,並接收按相關性排序的選項列表。
-
街道地址,接收該地址的緯度和經度。這就是所謂的地理編碼。
-
緯度和經度位置,接收相關的街道地址或有關該位置的其他資訊。這就是所謂的反向地理編碼。
-
部分或拼錯的自由格式文字查詢,通常在使用者鍵入時輸入。這就是所謂的自動完成,自動建議或模糊匹配。
place 索引包括用於搜尋的資料提供者。
注意
地圖資料和其他地理位置資訊 (包括確切位置) 可能會因資料提供者而異。最佳做法是為您的地點索引、地圖和其他 Amazon 位置資源使用相同的資料提供者。例如,如果地點索引返回的位置與地圖資源提供的相同位置的位置不匹配,則可以在地圖上看似錯誤位置的位置放置標記。
以下說明如何建立和使用放置索引資源:
-
首先,您可以透過選取資料提供者在 AWS 帳戶中建立位置索引資源。
-
然後,您可以選擇並安裝與您的開發環境和應用程序匹配的 SDK。如需有關可用選項的詳細資訊,請參閱有關存取 Amazon 位置的主題。
-
開始使用 Amazon 位置位置 API。如需詳細資訊,請參閱有關使用「地點」搜尋的主題。
-
然後,您可以使用 Amazon CloudWatch 和 AWS CloudTrail. 如需詳細資訊,請參閱 監控 Amazon Location Service 與 Amazon CloudWatch 及 記錄和監控 AWS CloudTrail。
地理編碼概念
Amazon 位置位置索引提供一個名為的動作 SearchPlaceIndexForText
,可讓您指定要搜尋的文字。例如,您可以搜尋:
-
地點-搜索
Paris
可以返回法國城市的位置。 -
企業 — 搜索
coffee shop
可以返回咖啡店的列表,包括他們的名稱和位置。您也可以指定要搜尋的位置,或指定要在其中搜尋的邊界方框,以使結果更具相關性。在這種情況下,在華盛頓州西雅圖市中心提供一個位置,將返回該地區的咖啡店。 -
地址-搜索
1600 Pennsylvania Ave, Washington D.C.
可以返回白宮在美國(位於該地址)的位置。
以這種方式搜尋文字通常稱為地理編碼,其中包括尋找地址或地點的地理位置。
Amazon 定 Location Service 也提供名為SearchPlaceIndexForPosition
的反向地理編碼動作。這需要一個地理位置,並返回有關該位置的地址,業務或其他信息。
搜尋結果
當您在 Amazon 定 Location Service 中成功提出搜尋請求時,會傳回一或多個結果。每個結果都包含一個標籤,即結果的名稱或描述。例如,搜尋時coffee shop
,可能會傳回含有標籤的結果Hometown Cafe
,告訴您找到了一家名為「家鄉咖啡廳」的咖啡店。搜尋結果通常也會包含結構化位址 (包含地址編號、單位、街道和郵遞區號等屬性)。視資料提供者而定,它也會包含其他中繼資料,例如國家/地區和時區。
對於商家名稱或類別(例如coffee
shop
)進行搜索,您可能希望在地圖上顯示所有返回的結果。對於地址搜索,您可能只想自動使用第一個結果。如需相關性的資訊,請參閱下一個主題。
多重結果和相關性
透過文字搜尋時,Amazon 定 Location Service 通常會找到不只單一的結果。例如,搜尋Paris
可能會傳回法國的城市,但也會傳回德克薩斯州的城市。結果依據資料提供者決定的相關性排序。
注意
結果會以所有提供者的相關性順序傳回。如果您選擇 Esri 或 Grab 做為資料提供者,則結果會包含相關性值,您可以使用這個值瞭解單一要求結果之間的相關性。
指定其他資訊 (例如國家/地區名稱或要搜尋的位置) 可以變更結果的順序、減少結果數目,甚至變更傳回的結果集。例如,在德克薩斯州搜尋某個位置以進行搜尋,傳回Paris,
Texas
的第一個結果比較Paris
有可能Paris,
France
。
在交互式應用程序中,您可以使用相關性來幫助決定是否接受最高結果,還是要求用戶在多個返回結果之間消除歧義。如果第一個結果具有很高的相關性,您可能只接受它作為正確答案。如果有多個高相關性結果或沒有高相關性結果,您可能需要列出結果並讓使用者選擇最佳結果。
地址結果
您可以使用相同的SearchPlaceIndexForText
動作搜尋 Amazon 定 Location Service 的地址。您提供的資訊越多,傳回的地址就越有可能符合指定的地址。例如,不123 Main St
太可能找到正確的結果123 Main St, Anytown, California, 90210
。
地址有多個屬性,例如街道號碼、街道、城市、地區和郵遞區號等。這些屬性用於在 place 索引中尋找與盡可能多方面相符的位址。找到的屬性越多,相符項目就越相關,傳回的可能性就越大。
注意
地址結果的相關性取決於結果與輸入相符的程度。這可能是匹配的屬性的數量,也可以是結果與輸入匹配的程度。例如,在資料中找到時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
API storage
中選擇) 時,Amazon 定 Location Service 不會為您儲存結果。這表示您計劃存儲結果。
在查看如何使用查詢到 Amazon 定 Location Service 的結果時,您應始終了解適用的AWS 服務條款
地方術語
- 放置索引資源
-
可讓您選擇資料來源以支援搜尋查詢。例如,您可以搜尋興趣點、地址或座標。將搜尋查詢傳送至 place 索引資源時,會使用資源配置的資料來源來完成該查詢。
- 地理编码
-
地理編碼是採取文本輸入,在地點索引中搜索它並返回結果與位置的過程。
- 反向地理編碼
-
反向地理編碼是指取得位置並從位置索引中傳回該位置相關資訊的程序,例如該位置的地址、城市或商家。
- 相關性
-
相關性是結果與輸入匹配的程度。這不是衡量正確性的衡量標準。
- 插值
-
插補是使用已知位址位置做為導引點來尋找未知位址的程序。
- 國家代碼
-
Amazon 定 Location Service 地點使用國際標準化組織 (ISO) 3166
國家/地區代碼來代表國家或地區。 要查找特定國家或地區的代碼,請使用 ISO 在線瀏覽平台
。