Ini adalah topik yang selalu muncul. Saya mungkin tidak memiliki jawaban yang benar, tetapi saya bisa memberikan pendapat pribadi saya .
Alasan mengapa mereka didukung, dapat dikaitkan dengan beberapa karakteristik tentang mereka, jadi izinkan saya menyebutkan beberapa.
Pertama, ada spec . Maksudku, aku berusia awal tiga puluhan dan benda ini ada sejak aku remaja. Jadi aman untuk mengatakan bahwa spesifikasi ini telah ada selama beberapa waktu. Tentu saja, ada beberapa format lain yang juga diterbitkan, tetapi perbedaannya adalah ...
Ini relatif sederhana! Itu dibangun di atas Format DBF , yang pada saat itu sudah ada dan didukung secara luas di beberapa platform / OS. Sudah ada parser yang bisa membaca setengah dari format ini (bagian DBF), sehingga memudahkan mendukung penambahan tambahan. Anda punya geometri? Tentu hanya membuat serial dan menulisnya. Kamu selesai. Bandingkan ini dengan liputan ! Cobalah untuk menjelaskan kepada seseorang secara sederhana apa yang dilakukan topologi bersih . Bukan hal sepele untuk menulis liputan yang bersih secara topologis.
Yang paling penting, saya pikir alasan # 1 untuk shapefile untuk tetap menjadi populer adalah karena mereka didukung baik dalam sistem Open Source maupun Proprietary . SIG apa yang Anda ketahui yang tidak mendukung shapefile?!? Belum pernah terjadi.
Sebagai gantinya, kami mendengar File GeoDatabases dan Spatialite . Kedua format, sangat unggul dalam hal fungsionalitas, fleksibilitas, kecepatan, dll. Bila dibandingkan dengan Shapefile. Dengan cara mereka sendiri, mereka memiliki hal-hal tertentu yang membuat mereka lebih baik daripada satu sama lain di daerah yang berbeda, tetapi perbandingan spasial dan FileGDB tentu saja di luar cakupan pertanyaan ini.
Apakah saya pikir salah satu format ini akan menggantikan Shapefile? Tidak dalam inkarnasi mereka saat ini .
Mengapa?
Bukan karena argumen teknologi (saya memang mengatakan mereka lebih unggul dalam aspek itu), tetapi karena sesuatu yang lain: lisensi.
Jadi apa masalah mereka?
FileGDB :
FileGDB menyediakan interoperabilitas melalui API FileGDB baru. Namun demikian, API ini disediakan dalam format bineroleh ESRI. Ini bukan spesifikasi. Setelah bekerja di tim GeoDatabase di masa lalu, saya dapat memberitahu Anda, bertentangan dengan semua teori konspirasi yang memakai topi timah, ini sama sekali tidak berbahaya. Itu karena internal GeoDatabase berubah pada setiap rilis. Menerbitkan spesifikasi lengkap pada dasarnya akan memberikan semua rincian tentang bagaimana segala sesuatu seharusnya dipertahankan dan kemudian dengan hati-hati mendokumentasikan perubahan pada format dengan setiap rilis tahunan. Itu tidak masuk akal. Jadi FileGDB API, meskipun bukan spec, itu abstrak semua perubahan kecil itu. Dan sekarang bisa digunakan lintas platform! Pikiran Anda, ini adalah langkah besar ke depan! Mengingat sifat konservatif ESRI, ini jelas merupakan reaksi ke arah yang benar.
Namun, dukungan biner saja tidak membuat siapa pun di dunia Open Source terlalu senang. Bagaimana Anda kemudian memanfaatkan porting beberapa kode untuk mengatakan rasa Linux lain jika ESRI tidak mendukungnya. Kamu tidak bisa Inilah yang membuat Open Source kuat, dan sekarang, Anda tidak dapat memanfaatkan ini. Jika ESRI memutuskan untuk berhenti mendukung Debian, itu dia. Kamu selesai. Dan tidak ada yang bisa Anda lakukan untuk mengubahnya.
Spasial :
Spatialite mengagumkan karena mendapat semua fungsi gratis dari SQLite . SQLite digunakan di mana-mana. Itu ada di Ponsel Android Anda, di iPhone / iPad Anda, di Firefox, di Google Chrome, di beberapa perangkat tertanam komersial - dapat berlangsung selamanya. Untuk benar-benar membuatnya menjadi Geoformat (dan tidak hanya melakukan operasi kotak terikat bodoh), itu perlu memanfaatkan perpustakaan geometri yang sama yang digunakan PostGIS: GEOS . Sedihnya, GEOS didasarkan pada pustaka geometri lain yang bahkan lebih keren yang dikenal sebagai JTS . Semua algoritma di JTS sangat kuat, jadi apa masalahnya?
Yah, JTS dilisensikan sebagai Open Source LGPL , dan LGPL adalah lisensi viral . JTS adalah LGPL, berarti GEOS adalah LGPL, berarti spatialite yang dihubungkan secara statis dengan GEOS adalah LGPL. Ini menyebalkan. Mengapa? Tanpa menjelaskan lisensi open source terlalu banyak, saya dapat memberitahu Anda bahwa, misalnya, saya tidak dapat menggunakan spatialite pada, katakanlah, aplikasi iPhone karena itu akan membuat seluruh aplikasi saya secara otomatis open source (iOS hanya memungkinkan tautan statis). Semua jenis lisensi GPL (sewajarnya) membuat takut ESRI, sehingga mereka tidak akan menyentuhnya dengan tiang 10 kaki. Oleh karena itu, ArcGIS, sistem GIS paling populer di dunia tidak (dan mungkin tidak akan pernah) mendukung spasial secara asli. Ini secara otomatis membunuhnya sebagai format yang layak.
Dan dengan demikian kita kembali ke shapefile jelek yang didukung di mana-mana.
Perbarui :
Rupanya jawaban saya cukup kontroversial sehingga seseorang memutuskan bahwa boleh saja mengedit dan mengubah seluruh arti jawaban saya dengan bebas untuk mengemukakan pandangan mereka. Tolong jangan lakukan itu. Jika Anda tidak setuju dengan saya, itu baik-baik saja, cukup kirimkan pendapat Anda dalam jawaban yang berbeda dan biarkan komunitas memutuskan. Saya memutar kembali suntingan ke jawaban saya untuk menunjukkan makna aslinya. Saya menambahkan pembaruan ini jika Anda membaca jawaban yang diedit yang mengklaim bahwa sqlite adalah format yang layak.