คำถามติดแท็ก postgis

PostGIS เป็นส่วนเสริมสำหรับฐานข้อมูลเชิงสัมพันธ์เชิงวัตถุของ PostgreSQL ที่เพิ่มการรองรับวัตถุทางภูมิศาสตร์

2
นำเข้าไฟล์ CSV ขนาดใหญ่ไปยัง PostGIS
ฉันกำลังพยายามนำเข้าไฟล์ CSV ไปยัง PostGIS ติดตามโพสต์นี้ฉันได้สร้างตารางก่อน ฉันพบข้อเสนอแนะอื่น ๆ ที่บอกว่าฉันสามารถเรียกใช้คำสั่งคัดลอก ถ้าฉันใช้คำสั่งนี้: COPY table FROM '/Users/macbook/file.csv' DELIMITERS ',' CSV HEADER; มันไม่ได้คัดลอกตารางเลย มันบอกว่า "ตาราง" ไม่เป็นที่รู้จัก ฉันลองสิ่งนี้: COPY moulding (Borough,Block,Lot,CD,CT2010,CB2010,SchoolDist,Council,ZipCode,FireComp,PolicePrct,Address,ZoneDist1,ZoneDist2,ZoneDist3,ZoneDist4,Overlay1,Overlay2,SPDist1,SPDist2,LtdHeight,AllZoning1,AllZoning2,SplitZone,BldgClass,LandUse,Easements,OwnerType,OwnerName,LotArea,BldgArea,ComArea,ResArea,OfficeArea,RetailArea,GarageArea,StrgeArea,FactryArea,OtherArea,AreaSource,NumBldgs,NumFloors,UnitsRes,UnitsTotal,LotFront,LotDepth,BldgFront,BldgDepth,Ext,ProxCode,IrrLotCode,LotType,BsmtCode,AssessLand,AssessTot,ExemptLand,ExemptTot,YearBuilt,BuiltCode,YearAlter1,YearAlter2,HistDist,Landmark,BuiltFAR,ResidFAR,CommFAR,FacilFAR,BoroCode,BBL,CondoNo,Tract2010,XCoord,YCoord,ZoneMap,ZMCode,Sanborn,TaxMap,EDesigNum,APPBBL,APPDate,PLUTOMapID,Version) FROM '/Users/macbook/file.csv' DELIMITERS ',' CSV HEADER; แต่ก็ไม่ได้ผลเหมือนกัน ตัวอย่างของชุดข้อมูลดังกล่าวสามารถดาวน์โหลดได้จากลิงค์นี้: ฉันควรสร้างแบบจำลองและเรียกใช้งานหรือไม่

1
มุมมองที่ปรากฏขึ้นไม่ปรากฏใน Geometry_Columns View
ฉันได้กำหนดมุมมองที่เป็นรูปธรรมในฐานข้อมูลที่เปิดใช้งาน PostGIS 2.1 ที่รัน PostgreSQL 9.3.1: CREATE MATERIALIZED VIEW canvec_data.contours_m AS SELECT contours_original.ogc_fid, contours_original.elevation::integer AS elevation_orig, CASE WHEN "substring"(contours_original.code::text, 1, 3) = '257'::text THEN round(contours_original.elevation::double precision * 0.3048::double precision) ELSE contours_original.elevation::double precision END AS elevation_m, contours_original.wkb_geometry::geometry(Linestring,3578) FROM canvec_data.contours_original ฉันอาจคาดการณ์ผิดพลาดว่าเอนทิตีผลลัพธ์นี้ (ตาราง?) จะแสดงรายการในpublic.geometry_columnsมุมมองและทำให้ซอฟต์แวร์ GIS วิวเวอร์เช่น QGIS ตีความได้อย่างถูกต้อง มุมมองที่ปรากฏขึ้นไม่ปรากฏในpublic.geometry_columnsมุมมอง ผมทำอะไรผิดหรือเปล่า? ขอบคุณ!

4
จะใช้ PostGIS เพื่อจัดการเวิร์กโฟลว์การประมวลผลทางภูมิศาสตร์ที่ซับซ้อนได้อย่างไร
องค์กรของเรากำลังพิจารณาที่จะย้ายเวิร์กโฟลว์การประมวลผลทางภูมิศาสตร์ไปยัง PostGIS ขณะนี้เรากำลังใช้ ArcGIS ด้วยเครื่องมือ Python ที่กำหนดเองมากมายที่ใช้ใน ModelBuilder เรากำลังย้ายข้อมูลส่วนใหญ่ของเราไปยัง PostGIS เพื่อการใช้งานแอพที่หลากหลายและตอนนี้เรากำลังถามว่ามันเหมาะสมที่จะทำการประมวลผลข้อมูลที่นั่นหรือไม่ เราประมวลผลข้อมูลเพื่อให้เข้ากันได้กับซอฟต์แวร์ของเรา ลูกค้าซื้อซอฟต์แวร์ของเราให้ข้อมูลกับเราและเราดำเนินการเพื่อให้ได้รับประโยชน์สูงสุดสำหรับการใช้งานในซอฟต์แวร์ของเรา สิ่งนี้ต้องการให้เราสร้างเครื่องมือที่หลากหลายเพื่อจัดการคุณภาพการป้อนข้อมูลที่หลากหลาย เราไม่สามารถคาดหวังว่าจะได้รับข้อมูลในรูปแบบเฉพาะหรือสคีมาดังนั้นเราจึงสร้างเครื่องมือในการแมปฟิลด์อินพุตไปยังฟิลด์เอาต์พุตแยกวิเคราะห์ฟิลด์เดียวเป็นหลายฟิลด์ผสานหลายชุดข้อมูล ฯลฯ นอกจากนี้เรายังทำการรวมเชิงพื้นที่ และเชื่อมต่อฟิลด์และการดำเนินการทั่วไปอื่น ๆ อีกมากมาย PostGIS นั้นมีความสามารถในการดำเนินการตามความต้องการในการประมวลผลทั้งหมดของเราอย่างสมบูรณ์แบบ สำหรับผู้ที่ใช้ PostGIS เพื่อทำการประมวลผลข้อมูลคุณมีคำแนะนำสำหรับองค์กรเครื่องมือในการใช้ ฯลฯ หรือไม่? คุณใช้ร่วมกับการประมวลผลหลาม QGIS หรือไม่? คนใช้ Python ORM สำหรับการประมวลผลที่ไม่ใช่เว็บ ฉันโน้มตัวไปใช้GeoDjangoเพราะมันมี Python ORM สำหรับ PostGIS การทดสอบเริ่มต้นของเราในการใช้ PostGIS เพื่อประมวลผลข้อมูลมีบล็อคข้อความ SQL ขนาดใหญ่จำนวนมากในรหัส Python และเราคิดว่า GeoDjango ORM อาจช่วยในการสร้างโค้ดที่จัดการและอ่านได้ง่ายขึ้น นอกจากนี้ยังมีGeoAlchemy …

3
วิธีการตั้งค่าและใช้เวิร์กสเตชัน GIS ระยะไกล (QGIS, GRASS, PostGIS)?
ฉันใช้ QGIS (และบางครั้ง GRASS และ PostGIS) ใน MacBookPro ของฉันในปี 2009 สำหรับโครงการวิทยานิพนธ์ของฉัน ฉันสงสัย (ในช่วงที่ไม่มีที่สิ้นสุดในการสรุป QGIS) ถ้าฉันสามารถตั้งค่าเซิร์ฟเวอร์เพื่อให้ฉันสามารถทำงานจากห้องสมุด / มหาวิทยาลัยโดยใช้พลังของเวิร์กสเตชันเดสก์ทอปที่บ้านเร็วขึ้น จนถึงตอนนี้ฉันเข้าใจ: ฉันสามารถเข้าถึงเซิร์ฟเวอร์ PostGIS ระยะไกลผ่าน QGIS ฉันสามารถรัน GRASS ผ่าน SSH ได้แม้กับ GUI GDAL มีไดรเวอร์ PostGIS แต่สำหรับการสืบค้นและการแทรกข้อมูลส่วนที่เหลือจะทำงานโดยเครื่องที่ออกคำสั่ง (หรือฉันผิด) การแก้ไขพื้นฐานของ PostGIS สามารถทำได้ผ่าน QGIS และฉันสามารถออกคำสั่ง SQL เพื่อทำการแก้ไขขั้นสูงเพิ่มเติมได้ สิ่งที่ฉันอยากรู้: ฉันสามารถใช้ปลั๊กอิน QGIS จากระยะไกลได้หรือไม่? VNC เป็นวิธีเดียวที่จะทำให้สำเร็จ มีเอกสารบางส่วนสำหรับ PostGIS + QGIS …

2
ตัวเลือกการแก้ไข / การวิเคราะห์สมการของ PostGIS
ฉันกำลังมองหาเวิร์กโฟลว์โอเพนซอร์ซเพื่อทำให้การสร้าง DEM เป็นแบบอัตโนมัติ เรามีชุดของเว็บไซต์ที่อยู่ในชุดข้อมูล LIDAR เราต้องการสร้าง DEM เฉพาะไซต์สำหรับแต่ละไซต์และเรากำลังมองหากระบวนการอัตโนมัติ จนถึงตอนนี้เรามีระบบอัตโนมัติ: การโหลดข้อมูลลงใน PostGIS (LIDAR และจุดไซต์) การสร้างขอบเขตไซต์ (การรวมกันของ st_buffer และ st_envelope) ตอนนี้เรากำลังมองหาตัวเลือกในการแก้ไขชุดย่อยข้อมูลในแต่ละไซต์และส่งออกไปยังไฟล์กริด Surfer7 ขณะนี้เรากำลังค้นหาข้อมูลในฐานข้อมูล PostGIS โดยใช้ QuantumGIS ส่งออกไปยังไฟล์ csv จากนั้นนำเข้าและกรอข้อมูลด้วยตนเองใน Surfer7 หวังว่าเราจะทำสิ่งนี้โดยอัตโนมัติเช่นกัน ดังนั้นสำหรับกรณีการใช้งานนี้เราต้องการที่จะวิเคราะห์ข้อมูล lidar ของเราเป็น DEM กรณีที่เป็นไปได้อื่น ๆ ที่เราสามารถนึกถึงเกี่ยวข้องกับวิธีการแก้ไขที่แตกต่างกัน - ดังนั้นหากมีตัวเลือกสำหรับระยะทางผกผันและ kriging - เราสนใจ! นี่เป็นแบบฝึกหัดการเรียนรู้สำหรับเรา - เรากำลังทำงานในขั้นตอนของทารก!

1
จะเรนเดอร์ตารางที่มีประเภทเรขาคณิตแบบผสมใน QGIS ได้อย่างไร
ฉันสร้างตารางที่มีประเภทรูปทรงเรขาคณิต "GEOMETRY" และแทรกข้อมูลประเภทจุดเส้นและรูปหลายเหลี่ยม คำถามของฉันคือวิธีแสดงข้อมูลเชิงพื้นที่นี้ Qgis ไม่สนับสนุนรูปแบบเรขาคณิต "GEOMETRY"
12 qgis  postgis 

1
วิธีการใช้รูปหลายเหลี่ยม centroid ใน Postgis
ฉันมีตารางที่มีชื่อคอลัมน์ละติจูดและลองจิจูดฉันต้องการอัปเดตสิ่งนี้ด้วยชื่อรูปหลายเหลี่ยมและลองจิจูดละติจูดของ centroid ฉันรู้ว่ามีฟังก์ชันใน postgis st_centroid (เรขาคณิต) แต่ฉันต้องการป้อนค่า x และค่า Y ในคอลัมน์แยกกันฉันจะทำสิ่งนี้ได้อย่างไร

2
ฐานข้อมูล Postgres เปิดใช้งานเป็นเชิงพื้นที่
ฉันกำลังพยายามสร้างฐานข้อมูล PostGIS ที่เปิดใช้งานเชิงพื้นที่ ฉันกำลังดังต่อไปนี้เอกสาร PostGIS, http://postgis.net/docs/manual-1.5/ch02.html#id2648455 ในรุ่นสั้น ๆ ที่ฉันดำเนินการ createdb yourdatabase createlang plpgsql yourdatabase แต่ฉันไม่ได้ใช้คำสั่งสามคำสั่งสุดท้าย psql -d yourdatabase -f postgis.sql psql -d yourdatabase -f postgis_comments.sql psql -d yourdatabase -f spatial_ref_sys.sql ฐานข้อมูลของฉันยังคงเปิดใช้งานอยู่หรือไม่ ถ้าไม่เช่นนั้นคุณสามารถบอกฉันได้ว่าไฟล์. sql เหล่านี้อยู่ที่ใดดังนั้นฉันสามารถรันคำสั่งสุดท้ายเหล่านั้นได้เนื่องจากฉันได้รับข้อผิดพลาดต่อไปนี้ postgis.sql: No such file or directory ฉันใช้ Ubuntu 12.04

6
บริการแผนที่ฟรีสำหรับเว็บแอปพลิเคชันส่วนตัว
พื้นหลัง กำลังมองหาเพื่อแสดงแผนที่ (สำหรับใช้ภายในเท่านั้น) บนเว็บเพจ แอปพลิเคชันจะต้องสามารถเพิ่มเลเยอร์ที่กำหนดเอง (โดยไม่ส่งข้อมูลไปยังโฮสต์บริการแผนที่): เขตเทศบาล (กำหนดโดย shapefiles) โซนที่กำหนดเอง (กำหนดโดยรูปหลายเหลี่ยมอาจเป็นในแง่ของเขตเทศบาล) ตำแหน่งไซต์ (กำหนดโดยละติจูด / ลองจิจูด) ข้อมูลเมืองเพิ่มเติม (กำหนดโดยไฟล์รูปร่าง) เนื่องจากเป็นกิจการเอกชนจึงกำจัดบริการแผนที่จำนวนมากรวมถึง: Google Maps, Bing, Yahoo! แผนที่ MapQuest และบริการชำระเงินตามการใช้งานอื่น ๆ อัปเดต # 1 บางทีMapQuestเป็นไปได้ อัปเดต # 2 ข้อกำหนดที่ฉันลืมพูดถึง: มีข้อมูลเพิ่มเติม (เมือง, เมือง, หมู่บ้าน) ไม่ได้เป็นส่วนหนึ่งของ OpenStreetMap ต้องรวมเมืองเหล่านี้โดยไม่ต้องให้ข้อมูลกับผู้ให้บริการแผนที่ มีเลเยอร์ต่างๆ (เช่นตำแหน่งพนักงาน) ที่จะต้องแสดงโดยไม่ต้องแจ้งผู้ให้บริการแผนที่ว่าจะหาข้อมูลได้จากที่ใด (เช่นข้อมูลจะอยู่ด้านหลังไฟร์วอลล์) การพัฒนาในปัจจุบัน ปัจจุบันฉันไม่สามารถหาเซิร์ฟเวอร์ที่ตรงกับความต้องการของฉันดังนั้นฉันได้ปฏิบัติตามคำแนะนำในเว็บไซต์ต่าง ๆ เพื่อติดตั้งเว็บเซิร์ฟเวอร์ Mapnik: …

5
อะไรคือวิธีที่เร็วที่สุด (ใช้ประสิทธิภาพ) ในการให้บริการคุณสมบัติของ PostGIS
ฉันสนใจวิธีที่เร็วที่สุดในการให้บริการคุณสมบัติของ PostGIS ฉันสามารถค้นหาการปรับปรุง WMS และทางเลือกได้หลายอย่าง (MapProxy, TileCache, Mapnik ... ) แต่ไม่มีการปรับปรุงและทางเลือก WFS โอเพนซอร์สมากมาย ฉันไม่สนใจกระเบื้อง แต่เป็นรูปหลายเหลี่ยมเหนือชั้นฐานของฉัน เสิร์ฟเร็ว คุณช่วยฉันชี้ไปในทิศทางที่ถูกต้องได้ไหม ปรับปรุง: ฉันลืมที่จะพูดถึงว่าแอพของฉันแสดงข้อมูลเกี่ยวกับที่ดิน และรูปหลายเหลี่ยมแบบ CADastral ต้องเลือกได้ (ไม่สามารถแก้ไขได้พวกมันจะถูกเน้นเมื่อคุณคลิกที่รูป) ตอนนี้ฉันกำลังใช้การผสมผสานของ WMS + Django ที่สร้างวัตถุ GeoJSON เมื่อผู้ใช้คลิกที่ส่วนใดส่วนหนึ่งของแผนที่เพื่อหลีกเลี่ยงสถานการณ์ที่มีรูปหลายเหลี่ยมหลายพันรูปพร้อมกันในไคลเอนต์ (OpenLayers) ฉันไม่ทราบว่าฉันอยู่ในทางที่ถูกต้องหรือไม่ (ฉันควรหลีกเลี่ยงสถานการณ์ที่ยากลำบากอย่างเช่นโพลหลายพันคนในไคลเอนต์โดยแสดงผลพวกเขาผ่าน WMS หรือโซลูชั่นอื่น ๆ หรือไม่ฉันควรปรับปรุงวิธีการเสิร์ฟรูปหลายเหลี่ยมหรือไม่)
12 postgis  wfs  features 

3
อนาคตของฐานข้อมูลเชิงพื้นที่?
อาจเป็นเรื่องนอกเรื่องเล็กน้อย ฉันอยากทราบความสำคัญเฉพาะของอุตสาหกรรมของฐานข้อมูลเชิงพื้นที่ Spatial Database เป็นส่วนสำคัญของระบบ GIS หรือไม่? หรือเราจะใช้เทคโนโลยีอื่น ๆ เพื่อจัดเก็บและดึงข้อมูลเชิงพื้นที่ในอนาคตอันใกล้? ฉันต้องการรู้สิ่งเหล่านี้เพราะเร็ว ๆ นี้ฉันจะไล่ตาม MS ในการเพิ่มประสิทธิภาพฐานข้อมูล Spatial

2
รับเส้นทางที่สั้นที่สุดหลายเส้นทางด้วย PgRouting ในแบบสอบถามหรือไม่
ฉันต้องการเรียกใช้อัลกอริธึมพา ธ ที่สั้นที่สุดในหลาย ๆ แหล่ง & เป้าหมายคู่กันในครั้งเดียวและรับผลเป็นตารางแล้วประมวลผลมัน ฉันจะทำสิ่งนี้ได้อย่างไร แบบสอบถามนี้ไม่ทำงาน: SELECT a.source, a.target, paths.* FROM all_to_all a, shortest_path_astar('...', a.source, a.target, false, false) paths; ERROR: function expression in FROM cannot refer to other relations of same query level (btw, all_to_all ไม่ได้หมายถึงทุกคนอย่างแท้จริง :) มันเป็นเพียงจำนวนคู่สุ่ม) สิ่งนี้ไม่ทำงาน: SELECT * FROM all_to_all a, ( SELECT * …

5
เร่งความเร็วการสืบค้น OpenStreetMap PostGIS
ผมมีข้อมูล OpenStreetMap เนเธอร์แลนด์โหลดลงในฐานข้อมูล PostGIS (PostgreSQL 8.3 / PostGIS 1.3.3) โดยใช้สคีออสโมซิ ซึ่งหมายความว่าแท็กทั้งหมดจะถูกเก็บไว้ในฟิลด์hstore นอกจากดัชนี GIST ที่ออสโมซิสสร้างขึ้นในฟิลด์เรขาคณิตฉันได้สร้างดัชนี GIST เพิ่มเติมในฟิลด์แท็ก พยายามค้นหาโดยใช้ทั้งข้อ จำกัด เชิงพื้นที่และข้อ จำกัด ในฟิลด์แท็กฉันพบว่าช้ากว่าที่ฉันต้องการ แบบสอบถามแบบนี้: SELECT n.geom,n.tags,n.tstamp,u.name FROM nodes AS n INNER JOIN users AS u ON n.user_id = u.id WHERE tags->'man_made'='surveillance' AND ST_Within(geom, ST_GeomFromText('POLYGON((4.0 52.0,5.0 52.0,5.0 53.0,4.0 53.0,4.0 52.0))',4326)); ใช้เวลา 22 วินาทีในการส่งคืน …

4
Global / Universal Unique Identifier ที่เหมาะสมสำหรับฐานข้อมูล PostGIS คืออะไร
ฉันได้อ่านว่าการใช้ OID เป็นคีย์หลักในฐานข้อมูล postgreSQL / PostGIS นั้นเป็นวิธีปฏิบัติที่ไม่ดีเนื่องจากมีกรณีที่สามารถรีเซ็ตสิ่งเหล่านี้ได้ ฟังดูมีเหตุผล แต่แล้วอะไรคือทางเลือกที่เหมาะสม ฉันเชื่อว่ามีตัวเลือกให้ใช้ UUID "Universal Unique Identifer" แต่ตัวอักษรและตัวเลขจำนวนมากที่คายออกมานั้นน่ากลัว พื้นหลังเพิ่มเติมเล็กน้อยกับสถานการณ์ของฉัน ฉันมีตารางเชิงพื้นที่ของฉันทั้งหมดที่สร้างขึ้นด้วยเขตข้อมูลที่เรียกว่า "gid" ซึ่งเป็นคีย์หลักสำหรับตารางนั้นและไม่ซ้ำกับตารางนั้นเท่านั้น ฉันมีปัญหาในขณะนี้เพราะฉันต้องการที่จะเชื่อมโยงตารางเชิงพื้นที่ของฉัน (ทั้งหมดที่มีเขตข้อมูล "gid" เริ่มต้นที่ 1 และเพิ่มขึ้น) เป็นหนึ่งตารางขนาดใหญ่ที่มีข้อมูลที่เกี่ยวข้อง เห็นได้ชัดว่าสำหรับความสัมพันธ์ของฉันในการทำงานคุณสมบัติเชิงพื้นที่ทั้งหมดของฉันต้องการตัวระบุที่ไม่ซ้ำซึ่งแตกต่างจากที่อื่น แก้ไขเพิ่มรูปภาพนี้ตามความคิดเห็นของ Peters Peter นี่เป็นความคิดที่ฉันมีในหัวของฉันมันอาจไม่ใช่วิธีที่ดีที่สุดที่จะไปเกี่ยวกับเรื่องนี้หรืออาจไม่ใช่การออกแบบฐานข้อมูลที่ดี ฉันสนใจในสิ่งที่คุณคิด เคล็ดลับใด ๆ

2
เลือกตามขอบของกล่องด้วย PostGIS
ฉันมีชุดข้อมูลขนาดใหญ่ในฐานข้อมูล PostGIS ฉันกำลังดูผ่านเว็บอินเตอร์เฟสที่โหลดข้อมูลเป็น GeoJSON มีข้อมูลมากเกินไปที่จะให้ลูกค้าทั้งหมดในครั้งเดียว (10s ของ MBs มูลค่า ... ) ดังนั้นฉันต้องการได้รับพื้นที่ของข้อมูลภายในกล่องขอบเขตที่เกิดขึ้นจากขอบของหน้าต่าง (เส้นประในภาพด้านล่าง ) การหาพิกัดสำหรับจุด f และ g นั้นง่ายมาก คำถามที่ 1:นี่เป็นวิธีที่ดีในการทำสิ่งต่าง ๆ หรือไม่? ฉันควรจะคิดว่าแคชพวกเขาเป็นแบบเรียงต่อกันหรือวิธีนี้น่าจะมีประสิทธิภาพเพียงพอหรือไม่ คำถามที่ 2:ฉันจะดึงข้อมูลเฉพาะภายในกล่องขอบเขตนี้ได้อย่างไร คำถามที่ 3:ถ้ารูปร่างซ้อนทับขอบของกล่องขอบ (เช่นรูปร่าง A ด้านล่าง) มีวิธีง่าย ๆ ในการครอบตัดเนื่องจากมีการสอบถามเหมือนในภาพที่สองหรือไม่?
12 postgis 

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