Saya membaca utas tentang ekstensi geospasial untuk Presto dalam masalah Github ini , di mana sebuah fungsi, line_locate_point
diperkenalkan. Itu didasarkan pada ST_LineLocatePoint
fungsi PostGIS , yang mengembalikan pelampung mewakili fraksi sepanjang garis titik terdekat pada garis itu ke lokasi tertentu.
Pertanyaannya adalah mengapa ini dinamai line_locate_point
dan tidak ST_LineLocatePoint
seperti versi PostGIS. Responsnya adalah bahwa fungsi ini tidak ada dalam standar SQL / MM Bagian 3, dan karenanya tidak boleh dimulai dengan ST_
.
Membaca dengan cepat melalui standar, saya tidak melihat komentar tentang bagaimana menangani kasus di mana Anda memperkenalkan fungsi spasial ke database Anda yang tidak ada dalam standar. Apakah semangat ST_
awalan untuk membedakan fungsi spasial dari fungsi non-spasial (seperti yang terlihat pada PostGIS), atau apakah ini menunjukkan bahwa fungsi tersebut sesuai dengan fungsi yang setara dalam SQL / MM Bagian 3?
Melihat keadaan API Presto saat ini , saya harus mengatakan bahwa pendekatan yang terakhir terlihat kurang bersih dan menimbulkan beberapa kebingungan mengapa nama-nama itu tidak konsisten, tetapi mungkin ini dapat diatasi dengan catatan sederhana di bagian atas.
Pertanyaan saya, kemudian, adalah apakah ada beberapa aspek dari standar yang saya abaikan yang memungkinkan untuk ekstensi di luar set objek spasial yang ditentukan, atau sebagai alternatif, jika ini secara tegas dilarang oleh aturan tertulis atau tidak tertulis dari mengikuti standar .