Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Indicizzazione dei dati sulla posizione
Puoi utilizzare l'indicizzazione del AWS IoT parco veicoli per indicizzare gli ultimi dati sulla posizione inviati dai tuoi dispositivi e cercare i dispositivi utilizzando le geoquery. Questa funzionalità risolve casi d'uso per il monitoraggio e la gestione dei dispositivi come il tracciamento della posizione e la ricerca di prossimità. L'indicizzazione della posizione funziona in modo simile ad altre funzionalità di indicizzazione del parco veicoli e prevede configurazioni aggiuntive da specificare nell'indicizzazione degli oggetti.
I casi d'uso più comuni includono: ricerca e aggregazione di dispositivi situati entro i confini geografici desiderati, acquisizione di informazioni specifiche sulla posizione utilizzando termini di query relativi ai metadati e allo stato del dispositivo da fonti di dati indicizzate, fornitura di una visualizzazione granulare, ad esempio filtrando i risultati in base a un'area geografica specifica per ridurre i ritardi di rendering nelle mappe di monitoraggio del parco veicoli e tenere traccia dell'ultima posizione del dispositivo segnalata, identificare i dispositivi che si trovano al di fuori dei limiti di confine desiderati e generare allarmi utilizzando le metriche della flotta. Per iniziare con l'indicizzazione della posizione e le geoquery, consultaTutorial sulle nozioni di base.
Formati di dati supportati
AWS IoT l'indicizzazione della flotta supporta i seguenti formati di dati sulla posizione:
-
Rappresentazione testuale ben nota dei sistemi di riferimento di coordinate
Una stringa che segue il formato Informazioni geografiche - Rappresentazione testuale ben nota dei sistemi di riferimento di coordinate
. Un esempio può essere "POINT(long lat)"
. -
Una stringa che rappresenta le coordinate
Una stringa con il formato
"latitude, longitude"
o"longitude, latitude"
. Se si utilizza"longitude, latitude"
, è necessario specificare ancheorder
ingeoLocations
. Un esempio può essere"41.12,-71.34"
. -
Un oggetto composto da tasti lat (latitudine), lon (longitudine)
Questo formato è applicabile all'ombra classica e all'ombra denominata. Chiavi supportate:
lat
latitude
,lon
,,long
,longitude
. Un esempio può essere{"lat": 41.12, "lon": -71.34}
. -
Una matrice che rappresenta le coordinate
Una matrice con il formato
[lat,lon]
o[lon,lat]
. Se si utilizza il formato[lon,lat]
, che è lo stesso delle coordinate in GeoJSON(applicabile all'ombra classica e all'ombra denominata), è necessario specificare anche in. order
geoLocations
Un esempio può essere:
{ "location": { "coordinates": [ **Longitude**, **Latitude** ], "type": "Point", "properties": { "country": "United States", "city": "New York", "postalCode": "*****", "horizontalAccuracy": 20, "horizontalConfidenceLevel": 0.67, "state": "New York", "timestamp": "2023-01-04T20:59:13.024Z" } } }
Come indicizzare i dati sulla posizione
I passaggi seguenti mostrano come aggiornare la configurazione di indicizzazione per i dati sulla posizione e utilizzare le geoquery per cercare dispositivi.
-
Scopri dove sono archiviati i dati sulla tua posizione
L'indicizzazione della flotta attualmente supporta l'indicizzazione dei dati sulla posizione memorizzati nelle ombre classiche o nelle ombre denominate.
-
Utilizza i formati di dati sulla posizione supportati
Assicurati che il formato dei dati sulla posizione segua uno dei formati di dati supportati.
-
Aggiorna la configurazione di indicizzazione
Se necessario, abilita la configurazione di indicizzazione di thing (registry). È inoltre necessario abilitare l'indicizzazione su shadow classic o named shadow che contengono i dati sulla posizione. Quando si aggiorna l'indicizzazione degli oggetti, è necessario includere i dati sulla posizione nella configurazione di indicizzazione.
-
Crea ed esegui geoquery
A seconda dei casi d'uso, crea geoquery ed eseguile per cercare dispositivi. La geoquery che componi deve seguire la sintassi Query. Alcuni esempi sono disponibili in Geoquery di esempio.
Aggiorna la configurazione di indicizzazione degli oggetti
Per indicizzare i dati sulla posizione, è necessario aggiornare la configurazione di indicizzazione e includere i dati sulla posizione. A seconda di dove sono archiviati i dati sulla posizione, segui i passaggi per aggiornare la configurazione di indicizzazione:
Se i dati sulla posizione sono memorizzati in un'ombra classica, è thingIndexingMode
necessario REGISTRY_AND_SHADOW
impostarli e specificarli nei geoLocations
campi (name
eorder
) in filter
.
Nel seguente esempio di configurazione di indicizzazione degli oggetti, specificate il percorso dei dati sulla posizione shadow.reported.coordinates
così name
e LonLat
come. order
{ "thingIndexingMode": "REGISTRY_AND_SHADOW", "filter": { "geoLocations": [ { "name": "shadow.reported.coordinates", "order": "LonLat" } ] } }
-
thingIndexingMode
La modalità di indicizzazione controlla se il registro o lo shadow sono indicizzati. Quando
thingIndexingMode
è impostato su beOFF
, l'indicizzazione degli oggetti è disabilitata.Per indicizzare i dati sulla posizione memorizzati in un'ombra classica, è necessario
thingIndexingMode
impostare su be.REGISTRY_AND_SHADOW
Per ulteriori informazioni, consulta Modalità di indicizzazione delle cose. -
filter
Il filtro di indicizzazione fornisce selezioni aggiuntive per ombre denominate e dati di geolocalizzazione. Per ulteriori informazioni, consulta Filtro di indicizzazione.
-
geoLocations
L'elenco degli obiettivi di geolocalizzazione che scegli di indicizzare. Il numero massimo predefinito di obiettivi di geolocalizzazione per l'indicizzazione è.
1
Per aumentare il limite, vedi Quote.AWS IoT Device Management -
name
Il nome del campo di destinazione della geolocalizzazione. Un valore di esempio di
name
può essere il percorso dei dati sulla posizione della tua ombra:.shadow.reported.coordinates
-
order
L'ordine del campo di destinazione della geolocalizzazione. Valori validi:
LatLon
e.LonLat
LatLon
significa latitudine e longitudine.LonLat
significa longitudine e latitudine. Questo campo è facoltativo. Il valore predefinito èLatLon
.
Se i dati sulla posizione sono memorizzati in un'ombra denominata, namedShadowIndexingMode
impostate su beON
, aggiungete il nome o i nomi delle ombre denominate al namedShadowNames
campo in filter
e specificate il percorso dei dati sulla posizione nel geoLocations
campo in filter
.
Nel seguente esempio di configurazione di indicizzazione degli oggetti, specificate il percorso dei dati della posizione shadow.name.namedShadow1.reported.coordinates
così name
e LonLat
come. order
{ "thingIndexingMode": "REGISTRY", "namedShadowIndexingMode": "ON", "filter": { "namedShadowNames": [ "namedShadow1" ], "geoLocations": [ { "name": "shadow.name.namedShadow1.reported.coordinates", "order": "LonLat" } ] } }
-
thingIndexingMode
La modalità di indicizzazione controlla se il registro o lo shadow sono indicizzati. Quando
thingIndexingMode
è impostato su beOFF
, l'indicizzazione degli oggetti è disabilitata.Per indicizzare i dati sulla posizione memorizzati in un'ombra denominata, è necessario
thingIndexingMode
impostare su beREGISTRY
(orREGISTRY_AND_SHADOW
). Per ulteriori informazioni, consulta Modalità di indicizzazione delle cose. -
filter
Il filtro di indicizzazione fornisce selezioni aggiuntive per le ombre denominate e i dati di geolocalizzazione. Per ulteriori informazioni, consulta Filtro di indicizzazione.
-
geoLocations
L'elenco degli obiettivi di geolocalizzazione che scegli di indicizzare. Il numero massimo predefinito di obiettivi di geolocalizzazione per l'indicizzazione è.
1
Per aumentare il limite, vedi Quote.AWS IoT Device Management -
name
Il nome del campo di destinazione della geolocalizzazione. Un valore di esempio di
name
può essere il percorso dei dati sulla posizione della tua ombra:.shadow.name.namedShadow1.reported.coordinates
-
order
L'ordine del campo di destinazione della geolocalizzazione. Valori validi:
LatLon
e.LonLat
LatLon
significa latitudine e longitudine.LonLat
significa longitudine e latitudine. Questo campo è facoltativo. Il valore predefinito èLatLon
.
Geoquery di esempio
Dopo aver completato la configurazione di indicizzazione dei dati sulla posizione, esegui le geoquery per cercare i dispositivi. Puoi anche combinare le tue geoquery con altre stringhe di query. Per ulteriori informazioni, consulta Sintassi delle query e Esempio di query per oggetti.
Query di esempio 1
L'esempio presuppone che i dati sulla posizione siano archiviati in un'ombra gps-tracker
denominata. L'output di questo comando è l'elenco dei dispositivi che si trovano entro una distanza radiale di 15,5 km dal punto centrale con coordinate (47.6204, -122.3491).
aws iot search-index --query-string \ "shadow.name.gps-tracker.reported.coordinates:geo_distance,47.6204,-122.3491,15.5km"
Query di esempio 2
Questo esempio presuppone che i dati sulla posizione siano archiviati in un'ombra classica. L'output di questo comando è l'elenco dei dispositivi che si trovano entro una distanza radiale di 15,5 km dal punto centrale con coordinate (47.6204, -122.3491).
aws iot search-index --query-string \ "shadow.reported.coordinates:geo_distance,47.6204,-122.3491,15.5km"
Query di esempio 3
Questo esempio presuppone che i dati sulla posizione siano archiviati in un'ombra classica. L'output di questo comando è l'elenco dei dispositivi non collegati e che si trovano al di fuori della distanza radiale di 15,5 km dal punto centrale con coordinate (47.6204, -122.3491).
aws iot search-index --query-string \ "connectivity.connected:false AND (NOT shadow.reported.coordinates:geo_distance,47.6204,-122.3491,15.5km)"