PostgreSQL memiliki modul bernama hstore yang mengimplementasikan penggunaan pasangan kunci / nilai (itu seperti model OpenStreetMap, tetapi dalam satu tabel).
Apa Pro dan Kontra hstore terkait kompatibilitas GIS, penambahan dan pengambilan data?
PostgreSQL memiliki modul bernama hstore yang mengimplementasikan penggunaan pasangan kunci / nilai (itu seperti model OpenStreetMap, tetapi dalam satu tabel).
Apa Pro dan Kontra hstore terkait kompatibilitas GIS, penambahan dan pengambilan data?
varchar
sebagai daftar terbatas koma:'name=foo,type=bar,'
Dan ambil nilai dengan:SELECT * WHERE tags LIKE '%type=bar,%'
Jawaban:
Kami benar-benar menunjukkan ini dalam buku kami (yang seharusnya akan dicetak dalam minggu depan atau lebih). Dalam bab 3. Anda dapat mengunduh kode dari sini: http://www.postgis.us/chapter_03
(dan tentu saja jika Anda membeli buku kami, Anda mendapatkan penjelasan menyeluruh tentang pro dan kontra)
Ia menggunakan saklar hstore osm2pgsql untuk mengimpor tag osm sebagai kolom hstore.
Apa yang kita lakukan untuk mengimbangi fakta bahwa Quantum dan hal-hal lain tidak mendukung hstore secara langsung adalah membuat tampilan di sekitar tag kunci yang kita butuhkan. Untuk aplikasi di mana Anda memiliki kontrol penuh menggunakan kueri yang alias nilai key-> sebagai kolom berfungsi dengan baik juga bahkan jika Anda driver database tidak mengerti tipe hstore.
sumber
Pro:
Ini adalah kinerja tinggi dan kunci fleksibel / nilai yang dapat diindeks dan ditanya.
Saya memiliki GIS web schemaless kompleks yang menggunakan kolom HStore untuk menyimpan properti fitur.
Cons:
Sebagian besar alat WMS / WFS seperti Mapserver, Geoserver dan similars tidak dapat memahami dan bekerja dengan kolom HStore, sehingga Anda akhirnya membuat Tampilan SQL kode keras (setidaknya dalam Geoserver). Anda masih dapat menggunakannya untuk bekerja WMS / WFS tetapi karena Anda harus melakukan hardcode pada tombol Anda kehilangan kemampuan schemaless.
sumber
Saya tidak punya pengalaman dengan itu sendiri, tetapi jika Anda tertarik untuk menyimpan data spasial dalam database seperti itu, Anda mungkin ingin mencari nosql spasial. Pada posting yang saya temukan adalah misalnya: /programming/2041622/nosql-and-spatial-data
sumber