Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pengindeksan data lokasi
Anda dapat menggunakan pengindeksan AWS IoT armada untuk mengindeks data lokasi terakhir yang dikirim perangkat Anda dan mencari perangkat menggunakan geoquery. Fitur ini menyelesaikan kasus penggunaan pemantauan dan manajemen perangkat seperti pelacakan lokasi dan pencarian jarak. Pengindeksan lokasi bekerja sama dengan fitur pengindeksan armada lainnya, dan dengan konfigurasi tambahan untuk ditentukan dalam pengindeksan barang Anda.
Kasus penggunaan umum meliputi: pencarian dan agregasi perangkat yang terletak dalam batas geografis yang diinginkan, dapatkan wawasan spesifik lokasi menggunakan istilah kueri yang terkait dengan metadata perangkat dan status dari sumber data yang diindeks, berikan tampilan terperinci seperti memfilter hasil ke area geografis tertentu untuk mengurangi keterlambatan rendering dalam peta pemantauan armada Anda dan melacak lokasi perangkat terakhir yang dilaporkan, dan mengidentifikasi perangkat yang berada di luar batas batas yang diinginkan dan menghasilkan alarm menggunakan metrik Metrik armada armada. Untuk memulai pengindeksan lokasi dan geoquery, lihat. Tutorial memulai
Format data yang didukung
AWS IoT pengindeksan armada mendukung format data lokasi berikut:
-
Well-known representasi teks dari sistem referensi koordinat
Sebuah string yang mengikuti informasi geografis - representasi Well-known teks dari
format sistem referensi koordinat. Contohnya bisa "POINT(long lat)". -
Sebuah string yang mewakili koordinat
Sebuah string dengan format
"latitude, longitude"atau"longitude, latitude". Jika Anda menggunakan"longitude, latitude", Anda juga harus menentukanorderdigeoLocations. Contohnya bisa"41.12,-71.34". -
Objek kunci lat (lintang), lon (bujur)
Format ini berlaku untuk bayangan klasik dan bayangan bernama. Kunci yang didukung:
latlatitude,lon,,long,longitude. Contohnya bisa{"lat": 41.12, "lon": -71.34}. -
Sebuah array yang mewakili koordinat
Sebuah array dengan format
[lat,lon]atau[lon,lat]. Jika Anda menggunakan format[lon,lat], yang sama dengan koordinat di GeoJSON(berlaku untuk bayangan klasik dan bayangan bernama), Anda juga harus menentukan orderdigeoLocations.Contohnya dapat berupa:
{ "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" } } }
Cara mengindeks data lokasi
Langkah-langkah berikut menunjukkan cara memperbarui konfigurasi pengindeksan untuk data lokasi Anda dan menggunakan geoquery untuk mencari perangkat.
-
Ketahui di mana data lokasi Anda disimpan
Pengindeksan armada saat ini mendukung pengindeksan data lokasi yang disimpan dalam bayangan klasik atau bayangan bernama.
-
Gunakan format data lokasi yang didukung
Pastikan format data lokasi Anda mengikuti salah satu format data yang didukung.
-
Perbarui konfigurasi pengindeksan
Pada kebutuhan minimum, aktifkan konfigurasi pengindeksan benda (registri). Anda juga harus mengaktifkan pengindeksan pada bayangan klasik atau bayangan bernama yang berisi data lokasi Anda. Saat memperbarui pengindeksan barang Anda, Anda harus menyertakan data lokasi Anda dalam konfigurasi pengindeksan.
-
Membuat dan menjalankan geoquery
Tergantung pada kasus penggunaan Anda, buat geoquery dan jalankan untuk mencari perangkat. Geoqeury yang Anda buat harus mengikuti sintaks Query. https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html Anda dapat menemukan beberapa contoh diContoh geoquery.
Perbarui konfigurasi pengindeksan
Untuk mengindeks data lokasi, Anda harus memperbarui konfigurasi pengindeksan dan menyertakan data lokasi Anda. Tergantung di mana data lokasi Anda disimpan, ikuti langkah-langkah untuk memperbarui konfigurasi pengindeksan Anda:
Jika data lokasi Anda disimpan dalam bayangan klasik, Anda thingIndexingMode harus mengatur menjadi REGISTRY_AND_SHADOW dan menentukan data lokasi Anda di geoLocations bidang (namedanorder) di filter.
Dalam contoh konfigurasi pengindeksan hal berikut, Anda menentukan jalur data lokasi shadow.reported.coordinates sebagai name dan LonLat sebagaiorder.
{ "thingIndexingMode": "REGISTRY_AND_SHADOW", "filter": { "geoLocations": [ { "name": "shadow.reported.coordinates", "order": "LonLat" } ] } }
-
thingIndexingModeMode pengindeksan mengontrol apakah registri atau bayangan diindeks. Ketika
thingIndexingModedisetel menjadiOFF, pengindeksan benda dinonaktifkan.Untuk mengindeks data lokasi yang disimpan dalam bayangan klasik, Anda
thingIndexingModeharus mengatur menjadiREGISTRY_AND_SHADOW. Untuk informasi selengkapnya, lihat Mode pengindeksan benda. -
filterFilter pengindeksan menyediakan pilihan tambahan untuk bayangan bernama dan data geolokasi. Untuk informasi selengkapnya, lihat Filter pengindeksan.
-
geoLocationsDaftar target geolokasi yang Anda pilih untuk diindeks. Jumlah maksimum target geolokasi default untuk pengindeksan adalah.
1Untuk menambah batas, lihat Ku AWS IoT Device Management ota. -
nameNama bidang target geolokasi. Nilai contoh
namedapat berupa jalur data lokasi bayangan Anda:shadow.reported.coordinates. -
orderUrutan bidang target geolokasi. Nilai yang valid:
LatLondanLonLat.LatLonberarti garis lintang dan bujur.LonLatberarti bujur dan lintang. Ini adalah bidang opsional. Nilai default-nya adalahLatLon.
Jika data lokasi Anda disimpan dalam bayangan bernama, setel namedShadowIndexingMode menjadiON, tambahkan nama bayangan bernama Anda ke namedShadowNames bidang di filter, dan tentukan jalur data lokasi Anda di geoLocations bidang di filter.
Dalam contoh konfigurasi pengindeksan hal berikut, Anda menentukan jalur data lokasi shadow.name.namedShadow1.reported.coordinates sebagai name dan LonLat sebagaiorder.
{ "thingIndexingMode": "REGISTRY", "namedShadowIndexingMode": "ON", "filter": { "namedShadowNames": [ "namedShadow1" ], "geoLocations": [ { "name": "shadow.name.namedShadow1.reported.coordinates", "order": "LonLat" } ] } }
-
thingIndexingModeMode pengindeksan mengontrol apakah registri atau bayangan diindeks. Ketika
thingIndexingModedisetel menjadiOFF, pengindeksan benda dinonaktifkan.Untuk mengindeks data lokasi yang disimpan dalam bayangan bernama, Anda
thingIndexingModeharus mengatur menjadiREGISTRY(atauREGISTRY_AND_SHADOW). Untuk informasi selengkapnya, lihat Mode pengindeksan benda. -
filterFilter pengindeksan menyediakan pilihan tambahan untuk bayangan bernama dan data geolokasi. Untuk informasi selengkapnya, lihat Filter pengindeksan.
-
geoLocationsDaftar target geolokasi yang Anda pilih untuk diindeks. Jumlah maksimum target geolokasi default untuk pengindeksan adalah.
1Untuk menambah batas, lihat Ku AWS IoT Device Management ota. -
nameNama bidang target geolokasi. Nilai contoh
namedapat berupa jalur data lokasi bayangan Anda:shadow.name.namedShadow1.reported.coordinates. -
orderUrutan bidang target geolokasi. Nilai yang valid:
LatLondanLonLat.LatLonberarti garis lintang dan bujur.LonLatberarti bujur dan lintang. Ini adalah bidang opsional. Nilai default-nya adalahLatLon.
Contoh geoquery
Setelah Anda menyelesaikan konfigurasi pengindeksan untuk data lokasi Anda, jalankan geoquery untuk mencari perangkat. Anda juga dapat menggabungkan geoquery Anda dengan string kueri lainnya. Untuk informasi selengkapnya, lihat Sintaks kueri dan Contoh kueri benda.
Contoh kueri 1
Contoh ini mengasumsikan data lokasi disimpan dalam bayangan bernamagps-tracker. Output dari perintah ini adalah daftar perangkat yang berada dalam jarak radial 15,5 km dari titik pusat dengan koordinat (47.6204, -122.3491).
aws iot search-index --query-string \ "shadow.name.gps-tracker.reported.coordinates:geo_distance,47.6204,-122.3491,15.5km"
Contoh kueri 2
Contoh ini mengasumsikan data lokasi disimpan dalam bayangan klasik. Output dari perintah ini adalah daftar perangkat yang berada dalam jarak radial 15,5 km dari titik pusat dengan koordinat (47.6204, -122.3491).
aws iot search-index --query-string \ "shadow.reported.coordinates:geo_distance,47.6204,-122.3491,15.5km"
Contoh kueri 3
Contoh ini mengasumsikan data lokasi disimpan dalam bayangan klasik. Output dari perintah ini adalah daftar perangkat yang tidak terhubung dan di luar jarak radial 15,5 km dari titik pusat dengan koordinat (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)"