SRID:4326データをジオメトリまたは地理として保存しますか?


8

OGR2OGRを使用して、SRID 4326ポイントデータをMSSQLサーバーにインポートしました。4326としてデータを検出してgeography列を作成するのではなく、geometry列を作成することにデフォルトで気付いていませんでした。私はこれを回避するためのコードを知っているので、問題はありません。

ジオメトリ列のデータはそのままQGISに表示されます。それで、実際にデータを地理列に入れる必要がありますか?

ありがとう!

回答:



0

数か月前に偶然これを実行しましたが、ラインを使用していて、非常に大きなフィーチャクラスでした(1000万個程度のフィーチャだったと思います)。SQL Server 2008と2012のどちらだったかも覚えていません。

ArcMapで気づいたことの1つは、すべてが本当に非常に遅いということです。私はそれをプロファイルしました。速度低下の原因となっているクエリを見つけてSSMSにポップし、原因はFilterメソッドであると判断しました(iirc、ArcMapはOIDを取得するためにエンベロープ付きのFilterを使用しています)。 SQL Serverはテーブルのすべての行を戻していました!!

geographyに切り替えると、Filterは指定されたジオメトリの正しい数のフィーチャを返していました。

他のメソッドの動作がおかしいとは思いませんが、4326のデータをSQLジオメトリに残しておかなかったため、わかりません。

テーブルのサイズがそれほど大きくない場合、これは問題にならない可能性があります。しかし、それはより大きなテーブルのために心に留めておくべきことです。QGISがを使用していなくても問題ありませんFilter

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.