View a markdown version of this page

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 jenis data spasial berikut:

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

  • Jenis data geografi — Jenis data ini dimaksudkan untuk menyimpan data ellipsoidal atau bulat-bumi, seperti koordinat garis lintang dan bujur GPS.

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

Memahami tipe data geospasial di Babelfish

  • Jenis 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 lintang, bujur, dan Pengidentifikasi Sistem Referensi Spasial (SRID) yang valid. Suatu titik dapat 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 Spatial (SRID) yang valid. Garis garis dapat berisi titik-titik dengan nilai Z (elevasi), M (ukuran) dan dapat kosong.

  • Mendukung tipe data poligon (dari versi 5.5.0 dan 6.0.0). Poligon adalah permukaan dua dimensi yang disimpan sebagai urutan titik yang mendefinisikan cincin pembatas eksterior dan nol atau lebih cincin interior.

  • Mendukung tipe data Multipoint (dari versi 5.6.0 dan 6.1.0). A MultiPoint adalah kumpulan poin nol atau lebih. Batas suatu MultiPoint instance kosong.

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

Fungsi tipe data geometri didukung di Babelfish

  • STGeomFromText (geometry_tagged_text, SRID) — Membuat contoh geometri menggunakan representasi Well-Known Teks (WKT).

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

  • Point (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 instance geometri.

  • <geometry_instance>.stSrid () — Mengekstrak pengidentifikasi referensi spasial (SRID) dari instance 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 contoh geometri valid.

  • <geometry_instance>.stDistance (other_geometric) — Menghitung jarak antara dua contoh geometri.

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

  • <geometry_instance>.stContains (other_geometric) — Memeriksa apakah instance geometri berisi instance other_geometric.

  • <geometry_instance>.stDisjoint (other_geometric) — Memeriksa apakah dua instance geometri tidak memiliki titik yang sama.

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

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

  • <geometry_instance>.STY — 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:

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

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

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

  • <geometry_instance>.hasZ — 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.

Dimulai dengan versi 5.5.0 dan 6.0.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • STPolyFromText (polygon_tagged_text, SRID) — Membuat contoh poligon menggunakan representasi WKT.

Dimulai dengan versi 5.6.0 dan 6.1.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • STMPointFromText (multipoint_tagged_text, SRID) — Membuat instance multipoint menggunakan representasi WKT.

  • <geometry_instance>. STNumPoints — Mengembalikan jumlah dari jumlah titik di masing-masing gambar dalam contoh geometri.

  • <geometry_instance>. STGeometryType — Mengembalikan nama tipe geometri yang diwakili oleh instance geometri.

  • <geometry_instance>. MakeValid() — Membuat representasi yang valid dari geometri tidak valid yang diberikan tanpa kehilangan salah satu simpul input.

  • Parse (WKT representation) — Membuat contoh geometri dari string Well-Known Text (WKT), dengan asumsi SRID 0. Setara dengan STGeomFromText () tetapi tanpa memerlukan parameter SRID. Mendukung nilai Z dan M opsional.

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 contoh titik menggunakan nilai float Lintang dan Bujur.

  • <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 instance geografi.

  • <geography_instance>.stSrid () — Mengekstrak pengidentifikasi referensi spasial (SRID) dari instance 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_geo) — Menghitung jarak antara dua contoh geografi.

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

  • <geography_instance>.stContains (other_geo) — Memeriksa apakah instance geografis berisi instance other_.

  • <geography_instance>.stDisjoint (other_geo) — Memeriksa apakah dua instance geografi tidak memiliki titik yang sama.

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

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

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

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

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

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

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

  • <geography_instance>.hasZ — 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.

Dimulai dengan versi 5.5.0 dan 6.0.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • STPolyFromText (polygon_tagged_text, SRID) — Membuat contoh poligon menggunakan representasi WKT.

Dimulai dengan versi 5.6.0 dan 6.1.0, Babelfish menyertakan dukungan untuk fungsi data spasial berikut:

  • STMPointFromText (multipoint_tagged_text, SRID) — Membuat instance multipoint menggunakan representasi WKT.

  • <geography_instance>. STNumPoints — Mengembalikan jumlah jumlah poin di setiap gambar dalam contoh geografi.

  • <geography_instance>. STGeometryType — Mengembalikan nama jenis geografi yang diwakili oleh instance geografi.

  • <geography_instance>. MakeValid() — Membuat representasi yang valid dari geografi tidak valid tertentu tanpa kehilangan salah satu simpul input.

  • Parse (WKT representation) — Membuat instance geografi dari string Well-Known Teks (WKT), dengan asumsi SRID 4326. Setara dengan STGeomFromText () tetapi tanpa memerlukan parameter SRID. Mendukung nilai Z dan M opsional.

Keterbatasan dalam Babelfish untuk tipe data Geospasial

  • Jenis geometri dan Geografi selain contoh titik, linestring, poligon, dan multipoint saat ini tidak didukung:

    • CircularString

    • CompoundCurve

    • CurvePolygon

    • MultiLineString

    • MultiPolygon

    • GeometryCollection

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

  • Hanya fungsi yang terdaftar yang 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.

  • Output fungsi stDistance untuk data Geografi mungkin memiliki variasi presisi kecil dibandingkan T-SQL dengan. Ini karena implementasi PostGIS yang mendasarinya. Untuk informasi selengkapnya, lihat ST_distance

  • STIsValid output fungsi untuk data Geometri dan Geografi mungkin memiliki beberapa penyimpangan dibandingkan dengan T-SQL. Karena ini, fungsi - stDistance, stContains, stinsterSects, stDisJoint, stDimension, STarea, steQuals juga dapat menyimpang dari T-SQL untuk beberapa kasus (mengembalikan output alih-alih melemparkan kesalahan). Ini karena 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.

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