Babelfish mendukung tipe data Geospasial - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Babelfish mendukung tipe data Geospasial

Dimulai dengan versi 3.5.0 dan 4.1.0, Babelfish menyertakan dukungan untuk dua tipe data spasial berikut:

  • Jenis data geometri — Tipe data ini dimaksudkan untuk menyimpan data planar atau Euclidean (bumi datar).

  • Jenis data geografi — Tipe data ini dimaksudkan untuk menyimpan data ellipsoidal atau round-earth, seperti koordinat lintang dan bujur GPS.

Tipe data ini memungkinkan penyimpanan dan manipulasi data spasial, tetapi dengan keterbatasan.

Memahami tipe data Geospasial di Babelfish

  • Tipe data geospasial didukung dalam berbagai objek database seperti tampilan, prosedur, dan tabel.

  • Mendukung tipe data titik untuk menyimpan data lokasi sebagai titik yang ditentukan oleh garis lintang, bujur, dan Pengidentifikasi Sistem Referensi Spasial (SRID) yang valid. Sebuah titik mungkin berisi nilai Z (elevasi), M (ukuran) dan bisa kosong.

  • Mendukung tipe data linestring (dari versi 5.4.0) yang ditentukan oleh urutan titik dan segmen garis yang menghubungkannya dan Pengidentifikasi Sistem Referensi Spasial (SRID) yang valid. Sebuah linestring mungkin berisi titik dengan nilai Z (elevasi), M (ukuran) dan bisa kosong.

  • Aplikasi yang terhubung ke Babelfish melalui driver seperti JDBC, ODBC, DOTNET, dan PYTHON dapat memanfaatkan fitur Geospasial ini.

Fungsi tipe data geometri didukung di Babelfish

  • STGeomFromText (geometry_tagged_text, SRID) - Membuat instance geometri menggunakan representasi Teks Terkenal (WKT).

  • STPointFromText (point_tagged_text, SRID) - Membuat contoh titik menggunakan representasi WKT.

  • Titik (X, Y, SRID) - Membuat contoh titik menggunakan nilai float koordinat x dan y.

  • <geometry_instance>. STAsText () — Mengekstrak representasi WKT dari contoh geometri.

  • <geometry_instance>. STAsBinary () — Mengekstrak representasi WKB dari contoh geometri.

  • <geometry_instance>. STArea () — Menghitung luas permukaan total contoh geometri.

  • <geometry_instance>. STSrid () — Mengekstrak pengenal referensi spasial (SRID) dari contoh geometri.

  • <geometry_instance>. STDimension () — Mengambil dimensi spasial dari contoh geometri.

  • <geometry_instance>. STIsEmpty () — Memeriksa apakah instance geometri kosong.

  • <geometry_instance>. STIsClosed () — Memeriksa apakah instance geometri ditutup.

  • <geometry_instance>. STIsValid () — Memeriksa apakah instance geometri valid.

  • <geometry_instance>. STDistance (other_geometry) - Menghitung jarak antara dua contoh geometri.

  • <geometry_instance>. STEquals (other_geometry) — Memeriksa apakah instance geometri mewakili set titik yang sama dengan contoh geometri lainnya.

  • <geometry_instance>. STContains (other_geometry) - Memeriksa apakah instance geometri berisi instance other_geometry.

  • <geometry_instance>. STDisjoint (other_geometry) — Memeriksa apakah dua contoh geometri tidak memiliki titik yang sama.

  • <geometry_instance>. STIntersects (other_geometry) — Memeriksa apakah dua contoh geometri berpotongan secara spasial.

  • .STX <geometry_instance>— Mengekstrak koordinat X (bujur) untuk contoh geometri.

  • .STY <geometry_instance>— Mengekstrak koordinat Y (lintang) untuk contoh geometri.

Dimulai dengan versi 4.7.0 dan 5.3.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • .M <geometry_instance>— Mengekstrak koordinat M dari contoh geometri.

  • .Z <geometry_instance>— Mengekstrak koordinat Z dari contoh geometri.

  • .hasM <geometry_instance>— Memeriksa apakah instance geometri memiliki setidaknya satu nilai M.

  • .hasZ <geometry_instance>— Memeriksa apakah instance geometri memiliki setidaknya satu nilai Z.

Dimulai dengan versi 5.4.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • STLineFromText (linestring_tagged_text, SRID) - Membuat instance linestring menggunakan representasi WKT.

Fungsi tipe data geografi didukung di Babelfish

  • STGeomFromText (geography_tagged_text, SRID) — Membuat instance geografi menggunakan representasi WKT.

  • STPointFromText (point_tagged_text, SRID) - Membuat contoh titik menggunakan representasi WKT.

  • Point (Lat, Long, SRID) - Membuat instance titik menggunakan nilai float Latitude dan Longitude.

  • <geography_instance>. STAsText () — Mengekstrak representasi WKT dari contoh geografi.

  • <geography_instance>. STAsBinary () — Mengekstrak representasi WKB dari contoh geografi.

  • <geography_instance>. STArea () — Menghitung luas permukaan total contoh geografi.

  • <geography_instance>. STSrid () — Mengekstrak pengenal referensi spasial (SRID) dari contoh geografi.

  • <geography_instance>. STDimension () — Mengambil dimensi spasial dari contoh geografi.

  • <geography_instance>. STIsEmpty () — Memeriksa apakah instance geografi kosong.

  • <geography_instance>. STIsClosed () — Memeriksa apakah instance geografi ditutup.

  • <geography_instance>. STIsValid () — Memeriksa apakah instance geografi valid.

  • <geography_instance>. STDistance (other_geography) - Menghitung jarak antara dua contoh geografi.

  • <geography_instance>. STEquals (other_geography) — Memeriksa apakah instance geografi mewakili set titik yang sama dengan instance geografi lainnya.

  • <geography_instance>. STContains (other_geography) - Memeriksa apakah instance geografi berisi instance other_geography.

  • <geography_instance>. STDisjoint (other_geography) — Memeriksa apakah dua contoh geografi tidak memiliki kesamaan poin.

  • <geography_instance>. STIntersects (other_geography) — Memeriksa apakah dua contoh geografi berpotongan secara spasial.

  • .Lat <geography_instance>— Mengekstrak nilai Latitude untuk contoh geografi.

  • .Long <geography_instance>— Mengekstrak nilai Bujur untuk contoh geografi.

Dimulai dengan versi 4.7.0 dan 5.3.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • .M <geography_instance>— Mengekstrak koordinat M dari contoh geografi.

  • .Z <geography_instance>— Mengekstrak koordinat Z dari contoh geografi.

  • .hasm <geography_instance>— Memeriksa apakah instance geografi memiliki setidaknya satu nilai M.

  • .hasZ <geography_instance>— Memeriksa apakah instance geografi memiliki setidaknya satu nilai Z.

Dimulai dengan versi 5.4.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • STLineFromText (linestring_tagged_text, SRID) - Membuat instance linestring menggunakan representasi WKT.

Keterbatasan pada Babelfish untuk tipe data Geospasial

  • Jenis Geometri dan Geografi selain instance titik dan linestring saat ini tidak didukung:

    • CircularString

    • CompoundCurve

    • Polygon

    • CurvePolygon

    • MultiPoint

    • MultiLineString

    • MultiPolygon

    • GeometryCollection

  • Saat ini, pengindeksan spasial tidak didukung untuk tipe data Geospasial.

  • Hanya fungsi yang terdaftar saat ini didukung untuk tipe data ini. Untuk informasi selengkapnya, lihat Fungsi tipe data geometri didukung di Babelfish dan Fungsi tipe data geografi didukung di Babelfish.

  • STDistance output fungsi untuk data Geografi mungkin memiliki variasi presisi kecil dibandingkan dengan T-SQL. Hal ini disebabkan implementasi PostGIS yang mendasarinya. Untuk informasi selengkapnya, lihat ST_Distance

  • STIsOutput fungsi yang valid untuk data Geometri dan Geografi mungkin memiliki beberapa penyimpangan dibandingkan dengan T-SQL. Karena ini, fungsi -, STDistance,,, STContains STInstersects STDisjoint STDimension STArea, juga STEquals dapat menyimpang dari T-SQL untuk beberapa kasus (mengembalikan output alih-alih melempar kesalahan). Hal ini disebabkan implementasi PostGIS yang mendasarinya. Untuk informasi lebih lanjut, lihat ST_ IsValid.

  • Untuk kinerja optimal, gunakan tipe data Geospasial bawaan, tanpa membuat lapisan abstraksi tambahan di Babelfish.

  • Dalam Babelfish, nama fungsi Geospasial digunakan sebagai kata kunci dan akan melakukan operasi spasial hanya jika digunakan dengan cara yang dimaksudkan.