Indicizzazione dei dati sulla posizione - AWS IoT Core

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:

  1. 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)".

  2. Una stringa che rappresenta le coordinate

    Una stringa con il formato "latitude, longitude" o"longitude, latitude". Se si utilizza"longitude, latitude", è necessario specificare anche order ingeoLocations. Un esempio può essere"41.12,-71.34".

  3. Un oggetto composto da tasti lat (latitudine), lon (longitudine)

    Questo formato è applicabile all'ombra classica e all'ombra denominata. Chiavi supportate: latlatitude,lon,,long,longitude. Un esempio può essere{"lat": 41.12, "lon": -71.34}.

  4. 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.

  1. 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.

  2. Utilizza i formati di dati sulla posizione supportati

    Assicurati che il formato dei dati sulla posizione segua uno dei formati di dati supportati.

  3. 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.

  4. 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 (nameeorder) 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 LatLonsignifica latitudine e longitudine. LonLatsignifica 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 filtere 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 be REGISTRY (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 LatLonsignifica latitudine e longitudine. LonLatsignifica 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)"