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


10

ปัจจุบันฉันใช้ PostGIS 1.5.3 แต่ฉันจะอัปเกรดเป็น 2.0 ในไม่ช้า ดังนั้นโปรดทราบความแตกต่างระหว่างสองเวอร์ชันที่เกี่ยวข้องกับคำถามต่อไปนี้

  • เป็นไปได้ไหมที่จะสร้างคอลัมน์ประเภทเรขาคณิต PostGIS ที่อนุญาตให้แทรกรูปหลายเหลี่ยมและหลายรูปแบบ แต่ จำกัด การแทรกประเภทรูปทรงเรขาคณิตอื่น ๆ โดยไม่ต้องแก้ไขข้อ จำกัด ที่ PostGIS สร้างขึ้นด้วยตนเองเมื่อเรียก AddGeometryColumn?
  • มีเหตุผลที่จะไม่ทำเช่นนี้? โดยเฉพาะอย่างยิ่ง PostGIS เก็บข้อมูลเมตาใด ๆ ที่แก้ไขข้อ จำกัด ด้วยตนเองอาจส่งผลกระทบในทางลบหรือไม่ (ฉันใหม่กับ PostGIS มากดังนั้นโปรดยกโทษให้ฉันหากแนวคิดของ PostGIS ที่เก็บข้อมูลเมตานั้นไร้สาระ)
  • โสหุ้ยในการใช้งานมีความสำคัญเพียงใดโดยการใช้มัลติโพลิกอนสำหรับทุกสิ่ง?

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

คำตอบ:


6

สำหรับคำถามแต่ละข้อของคุณ ...

  1. ไม่ได้โดยไม่ต้องแก้ไขข้อ จำกัด ด้วยตนเอง

  2. มีข้อมูลเมตาบางส่วนเก็บอยู่ในเรขาคณิต PostGIS ในทางเทคนิคไม่มีเหตุผลที่จะไม่ทำเช่นนี้ ถ้าคุณต้องการให้คอลัมน์เก็บรูปหลายเหลี่ยมหรือหลายรูปแบบนั่นก็ขึ้นอยู่กับคุณ เหตุผลทั่วไปสำหรับการผสานกับรูปทรงเรขาคณิตชนิดหนึ่งต่อคอลัมน์คือความเรียบง่ายเมื่อตารางโตขึ้นและ / หรือถ้าตารางมีขนาดใหญ่

  3. รูปหลายเหลี่ยมที่ประกอบด้วยรูปหลายเหลี่ยมเพียงรูปเดียวจะมีขนาดใหญ่กว่ารูปหลายเหลี่ยม แต่ไม่มาก ความเร็วของการสอบถามเชิงพื้นที่ (ด้วยดัชนีที่เหมาะสม) มัลติโพลิกอนที่มีรูปหลายเหลี่ยมหนึ่งรูปเทียบกับรูปหลายเหลี่ยมเพียงรูปเดียวก็จะเหมือนกัน

สำหรับข้อมูลของฉันหากคอลัมน์มีรูปหลายเหลี่ยมฉันมีคอลัมน์ที่เป็นรูปหลายเหลี่ยมตามที่อนุญาตสำหรับเหตุการณ์ที่จะมีการแทรกรูปหลายเหลี่ยมในคอลัมน์ เพียงแค่เรียกใช้ ST_Multi ขณะที่คุณกำลังแทรก

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