TairGIS adalah struktur data yang menggunakan indeks R-tree dan mendukung API terkait Sistem Informasi Geografis (SIG). Berbeda dengan perintah Redis GEO asli yang memanfaatkan GeoHash dan Sorted Set Redis untuk mengkueri titik, TairGIS menawarkan fitur yang lebih lengkap dengan mendukung kueri titik, linestring, dan poligon.
Fitur
Menggunakan indeks R-tree untuk kueri dan penyimpanan.
Mendukung kueri linestring dan poligon, termasuk kueri irisan himpunan.
Menyediakan perintah GIS.SEARCH, yang memiliki fungsi serupa dengan perintah
GEORADIUSRedis asli.
Modul ini bersifat open-source. Untuk informasi selengkapnya, lihat TairGIS.
Praktik terbaik
Prasyarat
Instans Tair berbasis DRAM telah dibuat.
Versi minor terbaru menyediakan lebih banyak fitur dan stabilitas yang lebih tinggi. Kami menyarankan Anda memperbarui instans ke versi minor terbaru. Untuk informasi selengkapnya, lihat Perbarui versi minor instans. Jika instans Anda merupakan instans cluster atau pemisahan baca/tulis, kami menyarankan Anda memperbarui node proxy dalam instans ke versi minor terbaru agar semua perintah dapat dijalankan sebagaimana mestinya.
Catatan penggunaan
Data TairGIS yang ingin Anda kelola disimpan pada instans Tair.
Perintah yang didukung
Tabel 1. Perintah TairGIS
Perintah | Sintaks | Deskripsi |
| Menambahkan satu atau beberapa poligon ke suatu area. Poligon tersebut dijelaskan dalam teks terkenal (WKT). Catatan WKT adalah bahasa markup teks untuk merepresentasikan objek geometri vektor pada peta, sistem referensi spasial objek spasial, dan transformasi antar sistem referensi spasial. | |
| Mengambil representasi WKT dari sebuah poligon dalam suatu area. | |
| Mengambil nama dan representasi WKT dari semua poligon dalam sebuah area. Jika Anda menentukan parameter WITHOUTWKT, hanya nama-nama poligon yang dikembalikan. | |
| Memeriksa apakah suatu titik, linestring, atau poligon berada di dalam poligon-poligon yang terletak pada area tertentu. Jika ya, perintah ini mengembalikan jumlah dan representasi WKT dari poligon-poligon yang memuat titik, linestring, atau poligon tersebut di area tersebut. | |
| Memeriksa apakah suatu area berada di dalam sebuah titik, linestring, atau poligon. Jika ya, perintah ini mengembalikan jumlah dan representasi WKT dari poligon dalam area tersebut yang berada di dalam titik, linestring, atau poligon tersebut. | |
| Memeriksa apakah suatu titik, linestring, atau poligon berpotongan dengan poligon-poligon dalam area tertentu. Jika ya, perintah ini mengembalikan jumlah dan representasi WKT dari poligon-poligon dalam area tersebut yang berpotongan dengan titik, linestring, atau poligon tersebut. | |
| Menanyakan titik-titik dalam suatu area yang berada dalam radius tertentu dari posisi garis bujur dan garis lintang spesifik. | |
| Menghapus poligon tertentu dari suatu area. | |
| Menghapus satu atau beberapa kunci TairGIS. Ini adalah perintah Redis asli. |
Daftar berikut menjelaskan konvensi sintaks perintah yang digunakan dalam topik ini:
Kata kunci huruf kapital: menunjukkan kata kunci perintah.Teks miring: menunjukkan variabel.[opsi]: menunjukkan bahwa parameter yang diapit tanda kurung siku bersifat opsional. Parameter yang tidak diapit tanda kurung siku wajib ditentukan.A|B: menunjukkan bahwa parameter yang dipisahkan oleh tanda vertikal (|) saling eksklusif. Hanya satu parameter yang dapat ditentukan....: menunjukkan bahwa parameter sebelum simbol ini dapat diulang berkali-kali.
GIS.ADD
Item | Deskripsi |
Sintaks |
|
Kompleksitas waktu | O(log n) |
Deskripsi perintah | Menambahkan satu atau beberapa poligon ke suatu area. Poligon tersebut dijelaskan dalam teks terkenal (WKT). Catatan WKT adalah bahasa markup teks untuk merepresentasikan objek geometri vektor pada peta, sistem referensi spasial objek spasial, dan transformasi antar sistem referensi spasial. |
Parameter |
|
Keluaran |
|
Contoh | Perintah contoh: Keluaran contoh: |
GIS.GET
Item | Deskripsi |
Sintaks |
|
Kompleksitas waktu | O(1) |
Deskripsi perintah | Mengambil representasi WKT dari sebuah poligon dalam suatu area. |
Parameter |
|
Keluaran |
|
Contoh | Jalankan perintah Perintah contoh: Keluaran contoh: |
GIS.GETALL
Item | Deskripsi |
Sintaks |
|
Kompleksitas waktu | O(n) |
Deskripsi perintah | Mengambil nama dan representasi WKT dari semua poligon dalam suatu area. Jika Anda menentukan parameter WITHOUTWKT, hanya nama poligon yang dikembalikan. |
Parameter |
|
Keluaran |
|
Contoh | Jalankan perintah Perintah contoh: Keluaran contoh: |
GIS.CONTAINS
Item | Deskripsi |
Sintaks |
|
Kompleksitas waktu |
|
Deskripsi perintah | Memeriksa apakah suatu titik, linestring, atau poligon berada di dalam poligon-poligon dalam area tertentu. Jika ya, perintah ini mengembalikan jumlah dan representasi WKT dari poligon yang memuat titik, linestring, atau poligon tersebut dalam area tersebut. |
Parameter |
|
Keluaran |
|
Contoh | Jalankan perintah Perintah contoh: Keluaran contoh: |
GIS.WITHIN
Item | Deskripsi |
Sintaks |
|
Kompleksitas waktu |
|
Deskripsi perintah | Memeriksa apakah suatu area berada di dalam suatu titik, linestring, atau poligon. Jika ya, perintah ini mengembalikan jumlah dan representasi WKT dari poligon dalam area tersebut yang berada di dalam titik, linestring, atau poligon tersebut. |
Parameter |
|
Keluaran |
|
Contoh | Jalankan perintah Perintah contoh: Keluaran contoh: |
GIS.INTERSECTS
Item | Deskripsi |
Sintaks |
|
Kompleksitas waktu |
|
Deskripsi perintah | Memeriksa apakah suatu titik, linestring, atau poligon berpotongan dengan poligon-poligon dalam area tertentu. Jika ya, perintah ini mengembalikan jumlah dan representasi WKT dari poligon dalam area tersebut yang berpotongan dengan titik, linestring, atau poligon tersebut. |
Parameter |
|
Keluaran |
|
Contoh | Jalankan perintah Perintah contoh: Keluaran contoh: |
GIS.SEARCH
Item | Deskripsi |
Sintaks | |
Kompleksitas waktu |
|
Deskripsi perintah | Mengkueri titik-titik dalam suatu area yang berada dalam radius tertentu dari posisi bujur dan lintang tertentu. |
Opsi |
Catatan Anda hanya dapat menentukan salah satu dari parameter RADIUS, MEMBER, dan GEOM. |
Keluaran |
|
Contoh | Jalankan perintah Perintah contoh: Keluaran contoh: |
GIS.DEL
Item | Deskripsi |
Sintaks |
|
Kompleksitas waktu | O(log n) |
Deskripsi perintah | Menghapus poligon tertentu dari suatu area. |
Parameter |
|
Keluaran |
|
Contoh | Jalankan perintah Perintah contoh: Keluaran contoh: |