PostGIS จะมีข้อได้เปรียบเหนือ MySQL สำหรับแอปพลิเคชันฟาร์มผลิตหรือไม่


23

ฉันมีเว็บแอปที่เก็บที่ตั้งของฟาร์มในเวสต์มิชิแกน คุณสามารถค้นหาผลิตภัณฑ์ (เช่น "บร็อคโคลี่") และมันจะแสดงให้คุณเห็นฟาร์มทั้งหมดที่เติบโตผลิตภัณฑ์นั้น

ตอนนี้ฉันใช้ MySQL และใช้ตรีโกณมิติเพื่อคำนวณความแตกต่างระหว่างที่ตั้งของผู้ใช้และที่ตั้งของแต่ละฟาร์ม มันไม่ได้เป็นวิธีที่ไม่ดีที่จะไป แต่มันใช้เวลาทำ

อีกสิ่งหนึ่งที่ฉันต้องการทำในไม่ช้าก็คือการทำแผนที่ฤดูกาลที่กำลังเติบโตสำหรับผลิตภัณฑ์ที่แตกต่างกันสำหรับภูมิภาคต่างๆ (ตัวอย่างเช่นฉันต้องการแสดงให้เห็นว่าอะโวคาโดเติบโตในช่วงเวลาหนึ่งของปีในแคลิฟอร์เนีย แต่ไม่มีโอไฮโอ)

ฉันรู้ว่านี่เป็นคำถามปลายเปิดและไร้เดียงสา แต่ฉันควรจะเปลี่ยนมาใช้ PostgreSQL / PostGIS เพื่อใช้ประโยชน์จากความสามารถเชิงพื้นที่หรือไม่


1
คุณกำลังวางแผนแผนที่ "ฤดูกาล" แบบไดนามิกหรือแผนที่คงที่หรือไม่?
underdark

ถ้าฉันเข้าใจสิ่งที่คุณขอให้มีพลัง ตัวอย่าง: ฤดูปลูกของแอปเปิ้ลใกล้กับ Grand Rapids, MI คือสิงหาคมถึงตุลาคม
Jason Swett

คำตอบ:


21

ฉันเป็นแฟนของ PostGIS ที่ยอดเยี่ยมและไม่มีประสบการณ์กับ MySQL ดังนั้นฉันควรลำเอียง

แต่จากสิ่งที่คุณเขียนฉันคิดว่ามีสองเหตุผลที่จะเปลี่ยน

ก่อนอื่นจะเป็นการง่ายกว่ามากที่จะใช้คุณลักษณะใหม่เช่นแผนที่ซีซันที่คุณพูดถึง

ประการที่สองเมื่อคุณคำนวณตรีโกณมิติของคุณวันนี้ฉันเดาว่าคุณกำลังทำอยู่นอกฐานข้อมูล หากคุณทำทุกอย่างใน db แทนคุณจะมีอิสระมากขึ้นในการพัฒนาแอปพลิเคชันที่ซ้อนทับ

คุณอาจจะไม่ต้องทำการคำนวณใด ๆ นอกฐานข้อมูลถ้าคุณเรียกใช้ postgis

สิ่งที่ฤดูกาลที่คุณพูดถึงอาจทำได้ใน MySQL เนื่องจากมันฟังดูธรรมดามาก แต่คุณจะได้รับความยืดหยุ่นในการใช้งาน PostGIS ด้วยฟังก์ชันการทำงานเชิงพื้นที่ทั้งหมด

/ Nicklas


18

ถ้าเพียงเพราะคุณจะมีทางเลือกมากขึ้นในแอปพลิเคชันของบุคคลที่สามสำหรับการสร้างแผนที่ข้อมูลของคุณ (mapserver, geoserver, ฯลฯ ) การโหลดข้อมูล (ogr2ogr, fme ฯลฯ ) PostGIS จะเป็นตัวเลือกที่ดีกว่า MySQL จะเหมาะกับกรณีที่ความต้องการของคุณยังค่อนข้าง จำกัด


FME รองรับ MySQL และ PostGIS
Raven

8

MySQL นอกจากนี้ยังมีการขยายเชิงพื้นที่แต่เท่าที่ผมรู้ว่า (ผมไม่เคยใช้มัน) ไม่เป็นคุณลักษณะที่อุดมไปด้วยและมีเสถียรภาพเป็นPostGIS

หากคุณกำลังพิจารณาที่จะใช้ฐานข้อมูลเชิงพื้นที่ PostGIS เป็นตัวเลือกที่ดีและความพยายามในการเปลี่ยนจะคุ้มค่า

ในขณะที่ MySQL มีฟังก์ชั่นบางอย่างเพื่อจัดเก็บและดำเนินการกับข้อมูลเชิงพื้นที่ แต่ฟังก์ชั่นนี้ค่อนข้างเป็นที่ต้องการและอยู่ไกลจากการรองรับ OpenGIS แบบเต็ม

สิ่งที่สะดุดตาที่สุดคือฟังก์ชั่นทั้งหมดที่สืบค้นข้อมูลเชิงพื้นที่นั้นจะทำงานบน MBR เท่านั้น (สี่เหลี่ยมมุมฉากต่ำสุด) เพื่อให้การดำเนินการง่ายขึ้น

http://forge.mysql.com/wiki/GIS_Functions


6

การต่อสู้ของ MySQL vs Postgis เพิ่มขึ้นอีกครั้ง:

http://ambergis.wordpress.com/2008/02/19/mysql-vs-postgis/

หมายเหตุความคิดเห็น ส่วนใหญ่มาจากที่นี่ (gis stack exchange)

ลิงก์ด้วย

http://www.spatiallyadjusted.com/2008/02/05/bringing-open-source-gis-into-an-esri-shop/#comment-32680

มีการปรับใช้ที่ประสบความสำเร็จกับ postgis มากกว่า mysql (ขึ้นอยู่กับการตั้งค่าไคลเอนต์และสิ่งที่พวกเขาพยายามทำ)

คำแนะนำเดียวของฉันสำหรับ Paul Ramsey (และทีมงาน PostGIS) เป็นGUI ที่ดีสำหรับการโพสต์กิลผ่าน PgAdmin (v4 .. ปัจจุบันใช้ QGIS เพื่อแสดงภาพข้อมูล postgis

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.