أكثر

استخدام فهرس مكاني ShapeFile مع ogr2ogr و ogr.DataSource.ExecuteSQL ()

استخدام فهرس مكاني ShapeFile مع ogr2ogr و ogr.DataSource.ExecuteSQL ()


لقد أنشأت فهرسًا مكانيًا foo.qix لـ foo.shp بهogrinfo -sql "إنشاء فهرس مكاني على foo" foo.shpومع ذلك ، عندما أقوم بإجراء استعلام باستخدام ogr2ogr وألقي نظرة عليه بشكل متقطع ، فإنه لا يستخدم هذا الفهرس:

strace -e open، access / opt / gdal-custom / bin / ogr2ogr -f CSV / vsistdout / foo.shp -dialect sqlite -sql "SELECT * FROM FOO WHERE ST_Intersects (GEOMETRY، BuildCircleMbr (0، 0، 150000، 4326) ) "2> & 1 | grep foo open ("foo.shp"، O_RDONLY) = 3 مفتوح ("foo.shx"، O_RDONLY) = 4 مفتوح ("foo.dbf"، O_RDONLY) = 4 مفتوح ("foo.cpg"، O_RDONLY) = - 1 ENOENT (لا يوجد مثل هذا الملف أو الدليل) مفتوح ("foo.CPG"، O_RDONLY) = -1 ENOENT (لا يوجد مثل هذا الملف أو الدليل) مفتوح ("foo.prj"، O_RDONLY) = 5

بمجرد أن أقوم بهذا العمل ، إذا كان هناك تحسين في السرعة ، أود أيضًا تطبيق فهرس مكاني على استعلام مماثل من Python عبر ExecuteSQL على ملف الشكل.


شاهد الفيديو: CSV File to Point Shapefile - Python GDALOGR